X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=MarkSlee.pde;h=7e0f46f279eb8e59ff941d83a84d05dda72a7b22;hb=ed149627fb9ee9b77ff6204c8973a267c3c2eead;hp=adc86d078e298deedf1c8ba2875676a7671cbbff;hpb=d626bc9b0197a1b5fd51a86f33f666a2a46579a2;p=SugarCubes.git diff --git a/MarkSlee.pde b/MarkSlee.pde index adc86d0..7e0f46f 100644 --- a/MarkSlee.pde +++ b/MarkSlee.pde @@ -128,6 +128,34 @@ class SwipeTransition extends SCTransition { } } +class MaskTransition extends SCTransition { + + MaskTransition(GLucose glucose) { + super(glucose); + } + + void computeBlend(int[] c1, int[] c2, double progress) { + if (progress < 0.5) { + for (int i = 0; i < c1.length; ++i) { + colors[i] = lerpColor( + c1[i], + blendColor(c1[i], c2[i], MULTIPLY), + (float) (2.*progress), + RGB); + } + } else { + for (int i = 0; i < c1.length; ++i) { + colors[i] = lerpColor( + c2[i], + blendColor(c1[i], c2[i], MULTIPLY), + (float) (2.*(1. - progress)), + RGB); + } + } + } +} + + class BassPod extends SCPattern { private GraphicEQ eq = null;