fix: small fixes
This commit is contained in:
+27
-4
@@ -52,28 +52,46 @@ vec4 debug(vec2 vUV)
|
||||
// inputs
|
||||
|
||||
int selected_srca = iState3 - 1;
|
||||
if (selected_srca == 14) {
|
||||
selected_srca = int(randTime(iSeed3 + 100, 16) * 14);
|
||||
bool random_srca = iState3 == 15;
|
||||
if (random_srca) {
|
||||
selected_srca = int(randTime(iSeed3 + 100) * 14);
|
||||
}
|
||||
if (selected_srca == 5 && iDemo > 0) {
|
||||
selected_srca = 1;
|
||||
random_srca = true;
|
||||
}
|
||||
if (selected_srca == 10 && iDemo > 0) {
|
||||
selected_srca = 2;
|
||||
random_srca = true;
|
||||
}
|
||||
int selected_srcb = iState4 - 1;
|
||||
if (selected_srcb == 14) {
|
||||
selected_srcb = int(randTime(iSeed4 + 100, 16) * 14);
|
||||
bool random_srcb = iState4 == 15;
|
||||
if (random_srcb) {
|
||||
selected_srcb = int(randTime(iSeed4 + 100) * 14);
|
||||
}
|
||||
if (selected_srcb == 5 && iDemo > 0) {
|
||||
selected_srcb = 1;
|
||||
random_srcb = true;
|
||||
}
|
||||
if (selected_srcb == 10 && iDemo > 0) {
|
||||
selected_srcb = 2;
|
||||
random_srcb = true;
|
||||
}
|
||||
int selected_fxa = iState5 - 1;
|
||||
bool random_fxa = iState5 == 15;
|
||||
if (random_fxa) {
|
||||
selected_fxa = int(randTime(iSeed5 + 100) * 14);
|
||||
}
|
||||
int selected_fxb = iState6 - 1;
|
||||
bool random_fxb = iState6 == 15;
|
||||
if (random_fxb) {
|
||||
selected_fxb = int(randTime(iSeed6 + 100) * 14);
|
||||
}
|
||||
int selected_mfx = iState8 - 1;
|
||||
bool random_mfx = iState8 == 15;
|
||||
if (random_mfx) {
|
||||
selected_mfx = int(randTime(iSeed8 + 100) * 14);
|
||||
}
|
||||
float fxa_value = magic(iMidi2_1[6].xy, vec3(1, 0, 0), iSeed5);
|
||||
bool fxa_invert = magic_trigger(vec3(iMidi2_1[6].z, 0, 0), iSeed5);
|
||||
float fxb_value = magic(iMidi2_2[6].xy, vec3(1, 0, 0), iSeed6);
|
||||
@@ -126,13 +144,18 @@ vec4 debug(vec2 vUV)
|
||||
|
||||
// show selected src/fx
|
||||
f += char_at(uv2, vec2(-5.4, 1.45), hex_chars[selected_srca]);
|
||||
f += random_srca ? circle(uv2, vec2(-4.25, 2.7), 0.1) : 0;
|
||||
f += char_at(uv2, vec2(-5.4, -2.55), hex_chars[selected_srcb]);
|
||||
f += random_srcb ? circle(uv2, vec2(-4.25, -1.3), 0.1) : 0;
|
||||
f += char_at(uv2, vec2(-2.4, 1.45), hex_chars[selected_fxa]);
|
||||
f += fxa_invert ? rect(uv2, vec2(-2, 2.7), vec2(0.5, 0.05)) : 0;
|
||||
f += random_fxa ? circle(uv2, vec2(-1.25, 2.7), 0.1) : 0;
|
||||
f += char_at(uv2, vec2(-2.4, -2.55), hex_chars[selected_fxb]);
|
||||
f += fxb_invert ? rect(uv2, vec2(-2, -1.3), vec2(0.5, 0.05)) : 0;
|
||||
f += random_fxb ? circle(uv2, vec2(-1.25, -1.3), 0.1) : 0;
|
||||
f += char_at(uv2, vec2(4.6, -0.55), hex_chars[selected_mfx]);
|
||||
f += mfx_invert ? rect(uv2, vec2(5, 0.7), vec2(0.5, 0.05)) : 0;
|
||||
f += random_mfx ? circle(uv2, vec2(5.75, 0.7), 0.1) : 0;
|
||||
|
||||
// show current selected
|
||||
f += iSelected == 3 ? h_rect(uv2, vec2(-5, 2), vec2(1.2), 0.1) : 0;
|
||||
|
||||
@@ -220,6 +220,10 @@ vec4 voronoi(vec2 uv, float dist) {
|
||||
|
||||
// SHAPES
|
||||
|
||||
float circle(vec2 uv, vec2 c, float size) {
|
||||
return istep(size, length(uv - c));
|
||||
}
|
||||
|
||||
float stripe(float x, float k1, float k2)
|
||||
{
|
||||
return k2 > k1 ? (1 - step(x, k1)) * (step(x, k2)) : ((1 - step(x, k2)) * (step(x, k1)));
|
||||
|
||||
+1
-1
@@ -526,7 +526,7 @@ subroutine(fx_stage_sub) vec4 fx_14(vec2 vUV, sampler2D previous, sampler2D feed
|
||||
// FX 15 : Random
|
||||
subroutine(fx_stage_sub) vec4 fx_15(vec2 vUV, sampler2D previous, sampler2D feedback, int seed, vec3 b1, vec2 f1, vec3 b2, vec2 f2, vec3 b3, vec2 f3, vec3 m0)
|
||||
{
|
||||
int fx = int(randTime(seed + 100, 16) * 14);
|
||||
int fx = int(randTime(seed + 100) * 14);
|
||||
|
||||
if (fx == 0) {
|
||||
return fx_1(vUV, previous, feedback, seed, b1, f1, b2, f2, b3, f3, m0);
|
||||
|
||||
@@ -50,6 +50,14 @@ float magic(vec2 F, vec3 B, float i)
|
||||
return mix(0, f.x * mix(1 - modTime(f.y), cosTime(f.y) * 0.5 + 0.5, b.y), b.x);
|
||||
}
|
||||
|
||||
float fmagic(vec2 F, vec3 B, float i)
|
||||
{
|
||||
vec2 f = magic_f(F, B, i);
|
||||
vec3 b = magic_b(B, i);
|
||||
|
||||
return f.x * mix(1 - modTime(f.y), cosTime(f.y) * 0.5 + 0.5, b.y);
|
||||
}
|
||||
|
||||
float magic(float i)
|
||||
{
|
||||
return magic(vec2(0), vec3(0, 0, 1), i);
|
||||
|
||||
+13
-3
@@ -433,13 +433,23 @@ subroutine(src_stage_sub) vec4 src_14(vec2 vUV, int seed, vec3 b1, vec2 f1, vec3
|
||||
// controls
|
||||
|
||||
float size = magic(f1, b1, seed + 10) * 2 + 0.1;
|
||||
float dx = (magic(f2, b2, seed + 20) * (1 - size * 0.06) - 0.5) * ratio;
|
||||
float dy = magic(f3, b3, seed + 30) * (1 - size * 0.17) - 0.5;
|
||||
float dx = (fmagic(f2, b2, seed + 20) * (1 - size * 0.06) - 0.5) * ratio;
|
||||
bool flip_x = magic_trigger(b2, seed + 20);
|
||||
float dy = fmagic(f3, b3, seed + 30) * (1 - size * 0.17) - 0.5;
|
||||
bool flip_y = magic_trigger(b3, seed + 30);
|
||||
|
||||
// logic
|
||||
|
||||
vec2 uv2 = uv1;
|
||||
|
||||
if (flip_x) {
|
||||
uv2.x = -uv2.x;
|
||||
}
|
||||
|
||||
if (flip_y) {
|
||||
uv2.y = -uv2.y;
|
||||
}
|
||||
|
||||
uv2 -= vec2(dx, -dy);
|
||||
|
||||
uv2 /= size;
|
||||
@@ -460,7 +470,7 @@ subroutine(src_stage_sub) vec4 src_14(vec2 vUV, int seed, vec3 b1, vec2 f1, vec3
|
||||
// SRC 15 : Random
|
||||
subroutine(src_stage_sub) vec4 src_15(vec2 vUV, int seed, vec3 b1, vec2 f1, vec3 b2, vec2 f2, vec3 b3, vec2 f3)
|
||||
{
|
||||
int src = int(randTime(seed + 100, 16) * 14);
|
||||
int src = int(randTime(seed + 100) * 14);
|
||||
|
||||
if (src == 0) {
|
||||
return src_1(vUV, seed, b1, f1, b2, f2, b3, f3);
|
||||
|
||||
Reference in New Issue
Block a user