Clean up new debug UI for unused/duplicated cubes a bit
[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 // TODO(mcslee): get rid of this global, make engine support two decks
27 LXPattern gplay;
28
29 LXPattern[] patterns(GLucose glucose) {
30 return new LXPattern[] {
31
32 // Slee
33 new Swarm(glucose),
34 new SpaceTime(glucose),
35 new ShiftingPlane(glucose),
36 new AskewPlanes(glucose),
37 new Blinders(glucose),
38 new CrossSections(glucose),
39 new Psychedelia(glucose),
40
41 new Traktor(glucose).setEligible(false),
42 new BassPod(glucose).setEligible(false),
43 new CubeEQ(glucose).setEligible(false),
44 new PianoKeyPattern(glucose).setEligible(false),
45
46 // DanH
47 new Noise(glucose),
48 gplay = new Play(glucose), // XXX do this properly
49 new Pong(glucose),
50
51 // Alex G
52 new SineSphere(glucose),
53
54 // Shaheen
55 new HelixPattern(glucose).setEligible(false),
56
57 // Toby
58 new GlitchPlasma(glucose),
59 new FireEffect(glucose).setEligible(false),
60 new StripBounce(glucose),
61 new SoundRain(glucose).setEligible(false),
62 new SoundSpikes(glucose).setEligible(false),
63 new FaceSync(glucose),
64
65 // Jack
66 new Swim(glucose),
67 new Balance(glucose),
68
69 // Tim
70 new TimPlanes(glucose),
71 new TimPinwheels(glucose),
72 new TimRaindrops(glucose),
73 new TimCubes(glucose),
74 // new TimTrace(glucose),
75 new TimSpheres(glucose),
76
77 // Ben
78 // new Sandbox(glucose),
79 new TowerParams(glucose),
80 new DriveableCrossSections(glucose),
81 new GranimTestPattern2(glucose),
82
83 //JR
84 new Gimbal(glucose),
85
86 // Sam
87 new JazzRainbow(glucose),
88
89 // Arjun
90 new TelevisionStatic(glucose),
91 new AbstractPainting(glucose),
92 new Spirality(glucose),
93
94 // Basic test patterns for reference, not art
95 new TestCubePattern(glucose),
96 new TestTowerPattern(glucose),
97 new TestProjectionPattern(glucose),
98 new TestStripPattern(glucose),
99 new TestBassMapping(glucose),
100 new TestFloorMapping(glucose),
101 new TestSpeakerMapping(glucose),
102 // new TestHuePattern(glucose),
103 // new TestXPattern(glucose),
104 // new TestYPattern(glucose),
105 // new TestZPattern(glucose),
106
107 };
108 }
109
110 LXTransition[] transitions(GLucose glucose) {
111 return new LXTransition[] {
112 new DissolveTransition(lx),
113 new SwipeTransition(glucose),
114 new FadeTransition(lx),
115 };
116 }
117
118 LXEffect[] effects(GLucose glucose) {
119 return new LXEffect[] {
120 new FlashEffect(lx),
121 new BoomEffect(glucose),
122 // new DesaturationEffect(lx),
123 // new ColorFuckerEffect(glucose),
124 new DualBlender(glucose),
125 };
126 }