2 * +-+-+-+-+-+ +-+-+-+-+-+
5 * +-+-+-+-+-+ | +-+-+-+-+ | +-+-+-+-+-+
7 * + THE + / / \ \ + CUBES +
8 * | |/ +-+-+-+-+-+-+-+ \| |
9 * +-+-+-+-+-+ | | +-+-+-+-+-+
16 * Welcome to the Sugar Cubes! This Processing sketch is a fun place to build
17 * animations, effects, and interactions for the platform. Most of the icky
18 * code guts are embedded in the HeronLX library, or files prefixed with
19 * an underscore. If you're an artist, you shouldn't need to worry about that.
21 * Below, you will find definitions of the Patterns, Effects, and Interactions.
22 * If you're an artist, create a new tab in the Processing environment with
23 * your name. Implement your classes there, and add them to the list below.
26 LXPattern[] patterns(LX lx) {
27 return new LXPattern[] {
30 new SineSphere(glucose),
31 //new CubeCurl(glucose),
43 // new Cathedrals(lx),
49 new ViolinWave(glucose),
50 new BouncyBalls(glucose),
51 new SpaceTime(glucose),
52 new ShiftingPlane(glucose),
53 new AskewPlanes(glucose),
54 new Blinders(glucose),
55 new CrossSections(glucose),
56 new Psychedelia(glucose),
57 new TimRaindrops(glucose),
58 new TimCubes(glucose),
59 new MultipleCubes(glucose),
61 new Traktor(glucose).setEligible(false),
62 new BassPod(glucose).setEligible(false),
63 new CubeEQ(glucose).setEligible(false),
64 new PianoKeyPattern(glucose).setEligible(false),
66 new StripBounce(glucose),
69 //new AKPong(glucose),
77 new ShiftingPlane(lx),
80 new CrossSections(lx),
83 new MultipleCubes(lx),
85 new Traktor(lx).setEligible(false),
86 new BassPod(lx).setEligible(false),
87 new CubeEQ(lx).setEligible(false),
88 new PianoKeyPattern(lx).setEligible(false),
108 new TimMetronome(glucose),
109 new TimPlanes(glucose),
110 new TimPinwheels(glucose),
112 // new TimTrace(glucose),
113 new TimSpheres(glucose),
116 new TimMetronome(lx),
118 new TimPinwheels(lx),
119 new TimRaindrops(lx),
125 new JackieSquares(lx),
130 new L8onAutomata(lx),
132 new L8onStripLife(lx),
139 new GlitchPlasma(glucose),
140 new FireEffect(glucose).setEligible(false),
142 new SoundRain(glucose).setEligible(false),
143 new SoundSpikes(glucose).setEligible(false),
144 new FaceSync(glucose),
148 new GlitchPlasma(lx),
149 new FireEffect(lx).setEligible(false),
151 new SoundRain(lx).setEligible(false),
152 new SoundSpikes(lx).setEligible(false),
157 new Balance(lx), // Ben
160 new DriveableCrossSections(lx),
161 new GranimTestPattern2(lx),
164 // new HelixPattern(lx).setEligible(false),
170 new TelevisionStatic(lx),
171 new AbstractPainting(lx),
174 // Basic test patterns for reference, not art
175 new TestCubePattern(lx),
176 new TestTowerPattern(lx),
177 new TestProjectionPattern(lx),
178 new TestStripPattern(lx),
179 // new TestHuePattern(lx),
180 // new TestXPattern(lx),
181 // new TestYPattern(lx),
182 // new TestZPattern(lx),
187 LXTransition[] transitions(LX lx) {
188 return new LXTransition[] {
189 new DissolveTransition(lx),
190 new AddTransition(lx),
191 new MultiplyTransition(lx),
192 new OverlayTransition(lx),
193 new DodgeTransition(lx),
194 new SwipeTransition(lx),
195 new FadeTransition(lx),
199 // Handles to globally triggerable effects
201 FlashEffect flash = new FlashEffect(lx);
202 BoomEffect boom = new BoomEffect(lx);
203 BlurEffect blur = new BlurEffect(lx);
204 QuantizeEffect quantize = new QuantizeEffect(lx);
205 ColorFuckerEffect colorFucker = new ColorFuckerEffect(lx);
210 colorFucker.enable();