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(GLucose glucose) {
27 return new LXPattern[] {
29 new SineSphere(glucose),
30 //new CubeCurl(glucose),
33 // new Cathedrals(glucose),
35 new MidiMusic(glucose),
38 new ViolinWave(glucose),
39 new BouncyBalls(glucose),
40 new SpaceTime(glucose),
41 new ShiftingPlane(glucose),
42 new AskewPlanes(glucose),
43 new Blinders(glucose),
44 new CrossSections(glucose),
45 new Psychedelia(glucose),
47 new MultipleCubes(glucose),
49 new Traktor(glucose).setEligible(false),
50 new BassPod(glucose).setEligible(false),
51 new CubeEQ(glucose).setEligible(false),
52 new PianoKeyPattern(glucose).setEligible(false),
69 new TimMetronome(glucose),
70 new TimPlanes(glucose),
71 new TimPinwheels(glucose),
72 new TimRaindrops(glucose),
73 new TimCubes(glucose),
74 // new TimTrace(glucose),
75 new TimSpheres(glucose),
78 new JackieSquares(glucose),
79 new JackieLines(glucose),
80 new JackieDots(glucose),
83 new L8onAutomata(glucose),
84 new L8onLife(glucose),
85 new L8onStripLife(glucose),
88 new VSTowers(glucose),
91 new GlitchPlasma(glucose),
92 new FireEffect(glucose).setEligible(false),
93 new StripBounce(glucose),
94 new SoundRain(glucose).setEligible(false),
95 new SoundSpikes(glucose).setEligible(false),
96 new FaceSync(glucose),
100 new Balance(glucose),
103 // new Sandbox(glucose),
104 new TowerParams(glucose),
105 new DriveableCrossSections(glucose),
106 new GranimTestPattern2(glucose),
109 // new HelixPattern(glucose).setEligible(false),
112 new JazzRainbow(glucose),
115 new TelevisionStatic(glucose),
116 new AbstractPainting(glucose),
117 new Spirality(glucose),
119 // Basic test patterns for reference, not art
120 new TestCubePattern(glucose),
121 new TestTowerPattern(glucose),
122 new TestProjectionPattern(glucose),
123 new TestStripPattern(glucose),
124 // new TestHuePattern(glucose),
125 // new TestXPattern(glucose),
126 // new TestYPattern(glucose),
127 // new TestZPattern(glucose),
132 LXTransition[] transitions(GLucose glucose) {
133 return new LXTransition[] {
134 new DissolveTransition(lx),
135 new AddTransition(lx),
136 new MultiplyTransition(lx),
137 new OverlayTransition(lx),
138 new DodgeTransition(lx),
139 new SwipeTransition(lx),
140 new FadeTransition(lx),
141 // new SubtractTransition(glucose), // similar to multiply - dh
142 // new BurnTransition(glucose), // similar to multiply - dh
143 // new ScreenTransition(glucose), // same as add -dh
144 // new SoftLightTransition(glucose), // same as overlay -dh
148 // Handles to globally triggerable effects
150 FlashEffect flash = new FlashEffect(lx);
151 BoomEffect boom = new BoomEffect(lx);
152 BlurEffect blur = new BlurEffect(lx);
153 QuantizeEffect quantize = new QuantizeEffect(lx);
154 ColorFuckerEffect colorFucker = new ColorFuckerEffect(lx);
159 colorFucker.enable();