/** * +-+-+-+-+-+ +-+-+-+-+-+ * / /| |\ \ * / / + + \ \ * +-+-+-+-+-+ | +-+-+-+-+ | +-+-+-+-+-+ * | | + / \ + | | * + THE + / / \ \ + CUBES + * | |/ +-+-+-+-+-+-+-+ \| | * +-+-+-+-+-+ | | +-+-+-+-+-+ * + + * | SUGAR | * + + * | | * +-+-+-+-+-+-+-+ * * Welcome to the Sugar Cubes! This Processing sketch is a fun place to build * animations, effects, and interactions for the platform. Most of the icky * code guts are embedded in the HeronLX library, or files prefixed with * an underscore. If you're an artist, you shouldn't need to worry about that. * * Below, you will find definitions of the Patterns, Effects, and Interactions. * If you're an artist, create a new tab in the Processing environment with * your name. Implement your classes there, and add them to the list below. */ LXPattern[] patterns(LX lx) { return new LXPattern[] { //new SineSphere(lx), //new CubeCurl(lx), // Slee // new Cathedrals(lx), new Swarm(lx), new MidiMusic(lx), new Pulley(lx), new ViolinWave(lx), new BouncyBalls(lx), new SpaceTime(lx), new ShiftingPlane(lx), new AskewPlanes(lx), new Blinders(lx), new CrossSections(lx), new Psychedelia(lx), new MultipleCubes(lx), new Traktor(lx).setEligible(false), new BassPod(lx).setEligible(false), new CubeEQ(lx).setEligible(false), new PianoKeyPattern(lx).setEligible(false), // AntonK new AKPong(lx), // DanH new Noise(lx), new Play (lx), new Pong (lx), new Worms(lx), // JR new Gimbal(lx), // Alex G // Tim new TimMetronome(lx), new TimPlanes(lx), new TimPinwheels(lx), new TimRaindrops(lx), new TimCubes(lx), // new TimTrace(lx), new TimSpheres(lx), // Jackie new JackieSquares(lx), new JackieLines(lx), new JackieDots(lx), // L8on new L8onAutomata(lx), new L8onLife(lx), new L8onStripLife(lx), // Vincent new VSTowers(lx), // Toby new GlitchPlasma(lx), new FireEffect(lx).setEligible(false), new StripBounce(lx), new SoundRain(lx).setEligible(false), new SoundSpikes(lx).setEligible(false), new FaceSync(lx), // Jack new Swim(lx), new Balance(lx), // Ben // new Sandbox(lx), new TowerParams(lx), new DriveableCrossSections(lx), new GranimTestPattern2(lx), // Shaheen // new HelixPattern(lx).setEligible(false), // Sam new JazzRainbow(lx), // Arjun new TelevisionStatic(lx), new AbstractPainting(lx), new Spirality(lx), // Micah new Rings(lx), // Open pixel control server new OpenPixelControl(lx, this), // Basic test patterns for reference, not art new TestCubePattern(lx), new TestTowerPattern(lx), new TestProjectionPattern(lx), new TestStripPattern(lx), // new TestHuePattern(lx), // new TestXPattern(lx), // new TestYPattern(lx), // new TestZPattern(lx), }; } LXTransition[] transitions(LX lx) { return new LXTransition[] { new DissolveTransition(lx), new AddTransition(lx), new MultiplyTransition(lx), new OverlayTransition(lx), new DodgeTransition(lx), new SwipeTransition(lx), new FadeTransition(lx), }; } // Handles to globally triggerable effects class Effects { FlashEffect flash = new FlashEffect(lx); BoomEffect boom = new BoomEffect(lx); BlurEffect blur = new BlurEffect(lx); QuantizeEffect quantize = new QuantizeEffect(lx); ColorFuckerEffect colorFucker = new ColorFuckerEffect(lx); Effects() { blur.enable(); quantize.enable(); colorFucker.enable(); } }