Merge pull request #13 from Jackiebo/master
[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 Traktor(glucose).setEligible(false),
48 new BassPod(glucose).setEligible(false),
49 new CubeEQ(glucose).setEligible(false),
50 new PianoKeyPattern(glucose).setEligible(false),
51
52 // DanH
53 new Noise(glucose),
54 new Play (glucose),
55 new Pong (glucose),
56 new Worms(glucose),
57
58 // Alex G
59
60 // Tim
61 new TimPlanes(glucose),
62 new TimPinwheels(glucose),
63 new TimRaindrops(glucose),
64 new TimCubes(glucose),
65 // new TimTrace(glucose),
66 new TimSpheres(glucose),
67
68 // Jackie
69 new JackieSquares(glucose),
70 new JackieLines(glucose),
71 new JackieDots(glucose),
72
73
74
75 // Toby
76 new GlitchPlasma(glucose),
77 new FireEffect(glucose).setEligible(false),
78 new StripBounce(glucose),
79 new SoundRain(glucose).setEligible(false),
80 new SoundSpikes(glucose).setEligible(false),
81 new FaceSync(glucose),
82
83 // Jack
84 new Swim(glucose),
85 new Balance(glucose),
86
87
88 // Ben
89 // new Sandbox(glucose),
90 new TowerParams(glucose),
91 new DriveableCrossSections(glucose),
92 new GranimTestPattern2(glucose),
93
94 // Shaheen
95 //new HelixPattern(glucose).setEligible(false),
96
97 //JR
98 new Gimbal(glucose),
99
100 // Sam
101 new JazzRainbow(glucose),
102
103 // Arjun
104 new TelevisionStatic(glucose),
105 new AbstractPainting(glucose),
106 new Spirality(glucose),
107
108 // Basic test patterns for reference, not art
109 new TestCubePattern(glucose),
110 new TestTowerPattern(glucose),
111 new TestProjectionPattern(glucose),
112 new TestStripPattern(glucose),
113 new TestBassMapping(glucose),
114 new TestFloorMapping(glucose),
115 new TestSpeakerMapping(glucose),
116 // new TestHuePattern(glucose),
117 // new TestXPattern(glucose),
118 // new TestYPattern(glucose),
119 // new TestZPattern(glucose),
120
121 };
122 }
123
124 LXTransition[] transitions(GLucose glucose) {
125 return new LXTransition[] {
126 new DissolveTransition(lx),
127 new AddTransition(glucose),
128 new MultiplyTransition(glucose),
129 new OverlayTransition(glucose),
130 new DodgeTransition(glucose),
131 new SwipeTransition(glucose),
132 new FadeTransition(lx),
133 // new SubtractTransition(glucose), // similar to multiply - dh
134 // new BurnTransition(glucose), // similar to multiply - dh
135 // new ScreenTransition(glucose), // same as add -dh
136 // new SoftLightTransition(glucose), // same as overlay -dh
137 };
138 }
139
140 // Handles to globally triggerable effects
141 class Effects {
142 FlashEffect flash = new FlashEffect(lx);
143 BoomEffect boom = new BoomEffect(glucose);
144 BlurEffect blur = new BlurEffect(glucose);
145 QuantizeEffect quantize = new QuantizeEffect(glucose);
146 ColorFuckerEffect colorFucker = new ColorFuckerEffect(glucose);
147
148 Effects() {
149 blur.enable();
150 quantize.enable();
151 colorFucker.enable();
152 }
153 }
154