Browse Source

added fxPosterize

master
Victor Giers 1 year ago
parent
commit
811b0d0b10
3 changed files with 48 additions and 21 deletions
  1. 44
    20
      effects.pde
  2. 3
    0
      secondapplet.pde
  3. 1
    1
      statics_and_lists.pde

+ 44
- 20
effects.pde View File



/* /*


AMPLIFY
AMPLIFY
*/ */


name = "fxAmplify"; name = "fxAmplify";
params.add(new Param("hue / red", FLOATVAL, -255, 255, new int[]{SAWTOOTH, TRIANG, SINE, TAN, TANINVERSE, RAMPUPDOWN, RAMP, RAMPINVERSE})); params.add(new Param("hue / red", FLOATVAL, -255, 255, new int[]{SAWTOOTH, TRIANG, SINE, TAN, TANINVERSE, RAMPUPDOWN, RAMP, RAMPINVERSE}));
params.add(new Param("saturation / green", FLOATVAL, -255, 255, new int[]{SAWTOOTH, TRIANG, SINE, TAN, TANINVERSE, RAMPUPDOWN, RAMP, RAMPINVERSE})); params.add(new Param("saturation / green", FLOATVAL, -255, 255, new int[]{SAWTOOTH, TRIANG, SINE, TAN, TANINVERSE, RAMPUPDOWN, RAMP, RAMPINVERSE}));
params.add(new Param("brightness / blue", FLOATVAL, -255,255, new int[]{SAWTOOTH, TRIANG, SINE, TAN, TANINVERSE, RAMPUPDOWN, RAMP, RAMPINVERSE}));
params.add(new Param("brightness / blue", FLOATVAL, -255, 255, new int[]{SAWTOOTH, TRIANG, SINE, TAN, TANINVERSE, RAMPUPDOWN, RAMP, RAMPINVERSE}));
params.add(new Param("RGB / HSB", INTVAL, 0, 1, new int[]{SQUAR, RANDOM})); params.add(new Param("RGB / HSB", INTVAL, 0, 1, new int[]{SQUAR, RANDOM}));
} }
void apply() { void apply() {
renderer.beginDraw(); renderer.beginDraw();
if(params.get(3).value > 0) colorMode(HSB);
else { colorMode(RGB); }
if (params.get(3).value > 0) colorMode(HSB);
else {
colorMode(RGB);
}
renderer.loadPixels(); renderer.loadPixels();
for (int i = 0; i < renderer.width*renderer.height; i++) { for (int i = 0; i < renderer.width*renderer.height; i++) {
float h = hue(renderer.pixels[i]); float h = hue(renderer.pixels[i]);
float s = saturation(renderer.pixels[i]); float s = saturation(renderer.pixels[i]);
float b = brightness(renderer.pixels[i]); float b = brightness(renderer.pixels[i]);
renderer.pixels[i] = color(h+params.get(0).value,s+params.get(1).value,b+params.get(2).value);
renderer.pixels[i] = color(h+params.get(0).value, s+params.get(1).value, b+params.get(2).value);
} }
renderer.updatePixels(); renderer.updatePixels();
renderer.endDraw(); renderer.endDraw();
} }
void apply() { void apply() {
renderer.beginDraw(); renderer.beginDraw();
if(params.get(3).value > 0) colorMode(HSB);
else { colorMode(RGB); }
if (params.get(3).value > 0) colorMode(HSB);
else {
colorMode(RGB);
}
renderer.loadPixels(); renderer.loadPixels();
float h = params.get(0).value; float h = params.get(0).value;
float s = params.get(1).value; float s = params.get(1).value;
float b = params.get(2).value; float b = params.get(2).value;
for (int i = 0; i < renderer.width*renderer.height; i++) { for (int i = 0; i < renderer.width*renderer.height; i++) {
h = hue(renderer.pixels[i])+h; h = hue(renderer.pixels[i])+h;
if(h > 255) h -= 255;
if (h > 255) h -= 255;
s = saturation(renderer.pixels[i])+s; s = saturation(renderer.pixels[i])+s;
if(s > 255) s -= 255;
if (s > 255) s -= 255;
b = brightness(renderer.pixels[i])+b; b = brightness(renderer.pixels[i])+b;
if(b > 255) b -= 255;
if (b > 255) b -= 255;
renderer.pixels[i] = color(h, s, b); renderer.pixels[i] = color(h, s, b);
} }
renderer.updatePixels(); renderer.updatePixels();
renderer.endDraw(); renderer.endDraw();
colorMode(RGB); colorMode(RGB);
} }
}
} }





/* /*


BUFFER
POSTERIZE
*/


*/
class POSTER extends Shader {


class BUFFER extends Shader{
BUFFER(){
name = "BUFFER";
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();
}
}


/*

BUFFER
*/

class BUFFER extends Shader {
BUFFER() {
name = "BUFFER";
} }
} }




// name // name
String getColorspaceName(int cs) { String getColorspaceName(int cs) {
switch(cs) { switch(cs) {
case OHTA:
return "OHTA";
case OHTA:
return "OHTA";
case CMY: case CMY:
return "CMY"; return "CMY";
case XYZ: case XYZ:

+ 3
- 0
secondapplet.pde View File

case(12): case(12):
shaderManager.addShader(new BROKENCOLORROT()); shaderManager.addShader(new BROKENCOLORROT());
break; break;
case(13):
shaderManager.addShader(new POSTER());
break;
/* /*
case(4): case(4):
shaderManager.addShader(new AUECHO()); shaderManager.addShader(new AUECHO());

+ 1
- 1
statics_and_lists.pde View File

"fxBrighter", "fxBrighter",
"fxAmplify", "fxAmplify",
"fxBrokenColorRot", "fxBrokenColorRot",
"fxPosterize",
"fxMove", "fxMove",
"fxEpilepsy", "fxEpilepsy",
"fxPosterize",
"fxCopyZoom", "fxCopyZoom",
"fxDual", "fxDual",
"fxScanker", "fxScanker",

Loading…
Cancel
Save