X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=TestPatterns.pde;fp=TestPatterns.pde;h=ab90d21effa4316d26a27312a36d4bc00edeb411;hb=e7f14d4d86fc5f0228895b610971a032fa096394;hp=b2e49f1d129bcacdfd81985825951828b0cd7fec;hpb=a3ccf23a7e146d62a1f2f15389afc1cd24f35554;p=SugarCubes.git diff --git a/TestPatterns.pde b/TestPatterns.pde index b2e49f1..ab90d21 100644 --- a/TestPatterns.pde +++ b/TestPatterns.pde @@ -259,6 +259,30 @@ class TestProjectionPattern extends TestPattern { } } +class ColorFuckerEffect extends SCEffect { + + BasicParameter hueShift = new BasicParameter("HSHFT", 0); + BasicParameter sat = new BasicParameter("SAT", 1); + BasicParameter bright = new BasicParameter("BRT", 1); + + ColorFuckerEffect(GLucose glucose) { + super(glucose); + addParameter(hueShift); + addParameter(bright); + addParameter(sat); + } + + public void doApply(int[] colors) { + for (int i = 0; i < colors.length; ++i) { + colors[i] = color( + (hue(colors[i]) + hueShift.getValuef()*360.) % 360, + saturation(colors[i]) * sat.getValuef(), + brightness(colors[i]) * bright.getValuef() + ); + } + } +} + class TestCubePattern extends TestPattern { private SawLFO index = new SawLFO(0, Cube.POINTS_PER_CUBE, Cube.POINTS_PER_CUBE*60);