Browse Source

added fxDual. also movies no longer jump randomly, they just play normally now

master
Victor Giers 1 year ago
parent
commit
5a6f24c1aa
3 changed files with 74 additions and 4 deletions
  1. 70
    3
      effects.pde
  2. 3
    0
      secondapplet.pde
  3. 1
    1
      statics_and_lists.pde

+ 70
- 3
effects.pde View File

@@ -1610,6 +1610,11 @@ class AMPLIFY extends Shader {
}
}

/*

BROKENCOLORROT
*/


class BROKENCOLORROT extends Shader {
@@ -1657,20 +1662,82 @@ class BROKENCOLORROT extends Shader {
*/

class POSTER extends Shader {

POSTER() {
name = "fxPosterize";
params.add(new Param("levels", INTVAL, 2, 10, new int[]{SAWTOOTH, TRIANG, SINE, TAN, TANINVERSE, RAMPUPDOWN, RAMP, RAMPINVERSE}));
}
void apply() {
renderer.beginDraw();
//renderer.loadPixels();
renderer.filter(POSTERIZE, (int)params.get(0).value);
//renderer.updatePixels();
renderer.endDraw();
}
}

/*

DUAL
*/

class DUAL extends Shader {
PImage buffer;
int dualColor;
int dirx = 1;
int diry = 1;
DUAL() {
name = "fxDual";
params.add(new Param("dual color", INTVAL, 2000000, 15000000, new int[]{SAWTOOTH, TRIANG, SINE, TAN, TANINVERSE, RAMPUPDOWN, RAMP, RAMPINVERSE}));
params.add(new Param("flip direction", INTVAL, 0, 3, new int[]{RANDOM}));
params.add(new Param("mode", INTVAL, 0, 1, new int[]{SQUAR, RANDOM}));
buffer = createImage(renderer.width, renderer.height, ARGB);
}
void apply() {
switch((int)params.get(1).value) {
case(0):
dirx = 1;
diry = 1;
break;
case(1):
dirx = -1;
diry = 1;
break;
case(2):
dirx = 1;
diry = -1;
break;
case(3):
dirx = -1;
diry = -1;
break;
}
dualColor = (int)params.get(0).value;
buffer.resize(renderer.width, renderer.height);
renderer.beginDraw();
renderer.loadPixels();
buffer.loadPixels();
if ((int)params.get(2).value > 0) {
for (int i = 0; i < renderer.width*renderer.height; i++) {
buffer.pixels[i] = renderer.pixels[i]+dualColor;
}
} else {
for (int i = 0; i < renderer.width*renderer.height; i++) {
buffer.pixels[i] = renderer.pixels[i]+dualColor;
buffer.pixels[i] = buffer.pixels[i]+i/10;
}
}
buffer.updatePixels();
renderer.updatePixels();
renderer.pushMatrix();
renderer.scale(dirx, diry);
renderer.image(buffer, 0, 0, dirx * renderer.width, diry * renderer.height);
renderer.popMatrix();
renderer.endDraw();
}
}





/*


+ 3
- 0
secondapplet.pde View File

@@ -545,6 +545,9 @@ public class SecondApplet extends PApplet {
case(13):
shaderManager.addShader(new POSTER());
break;
case(14):
shaderManager.addShader(new DUAL());
break;
/*
case(4):
shaderManager.addShader(new AUECHO());

+ 1
- 1
statics_and_lists.pde View File

@@ -55,11 +55,11 @@ String availableFx[] = {
"fxAmplify",
"fxBrokenColorRot",
"fxPosterize",
"fxDual",
"fxMove",
"fxEpilepsy",
"fxCopyZoom",
"fxDual",
"fxScanker",
"fxPixelSort",
"fxEcho",

Loading…
Cancel
Save