L8on Strips 3d Life
[SugarCubes.git] / SugarCubes.pde
1 /**
2 * +-+-+-+-+-+ +-+-+-+-+-+
3 * / /| |\ \
4 * / / + + \ \
5 * +-+-+-+-+-+ | +-+-+-+-+ | +-+-+-+-+-+
6 * | | + / \ + | |
7 * + THE + / / \ \ + CUBES +
8 * | |/ +-+-+-+-+-+-+-+ \| |
9 * +-+-+-+-+-+ | | +-+-+-+-+-+
10 * + +
11 * | SUGAR |
12 * + +
13 * | |
14 * +-+-+-+-+-+-+-+
15 *
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 GLucose library extension. If you're an
19 * artist, you shouldn't need to worry about any of that.
20 *
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.
24 */
25
26 LXPattern[] patterns(GLucose glucose) {
27 return new LXPattern[] {
28
29 new SineSphere(glucose),
30 //new CubeCurl(glucose),
31
32 // Slee
33 // new Cathedrals(glucose),
34 new Swarm(glucose),
35 new MidiMusic(glucose),
36 new Pulley(glucose),
37
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),
46
47 new MultipleCubes(glucose),
48
49 new Traktor(glucose).setEligible(false),
50 new BassPod(glucose).setEligible(false),
51 new CubeEQ(glucose).setEligible(false),
52 new PianoKeyPattern(glucose).setEligible(false),
53
54 // DanH
55 new Noise(glucose),
56 new Play (glucose),
57 new Pong (glucose),
58 new Worms(glucose),
59
60 // Alex G
61
62 // Tim
63 new TimMetronome(glucose),
64 new TimPlanes(glucose),
65 new TimPinwheels(glucose),
66 new TimRaindrops(glucose),
67 new TimCubes(glucose),
68 // new TimTrace(glucose),
69 new TimSpheres(glucose),
70
71 // Jackie
72 new JackieSquares(glucose),
73 new JackieLines(glucose),
74 new JackieDots(glucose),
75
76 // L8on
77 new L8onLife(glucose),
78 new L8onAutomata(glucose),
79 new L8onStrips(glucose),
80
81 // Vincent
82 new VSTowers(glucose),
83
84 // Toby
85 new GlitchPlasma(glucose),
86 new FireEffect(glucose).setEligible(false),
87 new StripBounce(glucose),
88 new SoundRain(glucose).setEligible(false),
89 new SoundSpikes(glucose).setEligible(false),
90 new FaceSync(glucose),
91
92 // Jack
93 new Swim(glucose),
94 new Balance(glucose),
95
96
97
98 // Ben
99 // new Sandbox(glucose),
100 new TowerParams(glucose),
101 new DriveableCrossSections(glucose),
102 new GranimTestPattern2(glucose),
103
104 // Shaheen
105 //new HelixPattern(glucose).setEligible(false),
106
107 //JR
108 new Gimbal(glucose),
109
110 // Sam
111 new JazzRainbow(glucose),
112
113 // Arjun
114 new TelevisionStatic(glucose),
115 new AbstractPainting(glucose),
116 new Spirality(glucose),
117
118 // Basic test patterns for reference, not art
119 new TestCubePattern(glucose),
120 new TestTowerPattern(glucose),
121 new TestProjectionPattern(glucose),
122 new TestStripPattern(glucose),
123 new TestBassMapping(glucose),
124 new TestFloorMapping(glucose),
125 new TestSpeakerMapping(glucose),
126 // new TestHuePattern(glucose),
127 // new TestXPattern(glucose),
128 // new TestYPattern(glucose),
129 // new TestZPattern(glucose),
130
131 };
132 }
133
134 LXTransition[] transitions(GLucose glucose) {
135 return new LXTransition[] {
136 new DissolveTransition(lx),
137 new AddTransition(glucose),
138 new MultiplyTransition(glucose),
139 new OverlayTransition(glucose),
140 new DodgeTransition(glucose),
141 new SwipeTransition(glucose),
142 new FadeTransition(lx),
143 // new SubtractTransition(glucose), // similar to multiply - dh
144 // new BurnTransition(glucose), // similar to multiply - dh
145 // new ScreenTransition(glucose), // same as add -dh
146 // new SoftLightTransition(glucose), // same as overlay -dh
147 };
148 }
149
150 // Handles to globally triggerable effects
151 class Effects {
152 FlashEffect flash = new FlashEffect(lx);
153 BoomEffect boom = new BoomEffect(glucose);
154 BlurEffect blur = new BlurEffect(glucose);
155 QuantizeEffect quantize = new QuantizeEffect(glucose);
156 ColorFuckerEffect colorFucker = new ColorFuckerEffect(glucose);
157
158 Effects() {
159 blur.enable();
160 quantize.enable();
161 colorFucker.enable();
162 }
163 }
164