Commit | Line | Data |
---|---|---|
49815cc0 MS |
1 | /** |
2 | * +-+-+-+-+-+ +-+-+-+-+-+ | |
3 | * / /| |\ \ | |
0e3c5542 | 4 | * / / + + \ \ |
49815cc0 MS |
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 | */ | |
51227786 MS |
25 | |
26 | // TODO(mcslee): get rid of this global, make engine support two decks | |
e28f168c | 27 | LXPattern gplay; |
49815cc0 MS |
28 | |
29 | LXPattern[] patterns(GLucose glucose) { | |
30 | return new LXPattern[] { | |
e28f168c | 31 | |
4c006f7b | 32 | // Slee |
87f6fa39 MS |
33 | new Swarm(glucose), |
34 | new SpaceTime(glucose), | |
1627a617 MS |
35 | new ShiftingPlane(glucose), |
36 | new AskewPlanes(glucose), | |
87f6fa39 MS |
37 | new Blinders(glucose), |
38 | new CrossSections(glucose), | |
39 | new Psychedelia(glucose), | |
4c006f7b MS |
40 | |
41 | new Traktor(glucose).setEligible(false), | |
42 | new BassPod(glucose).setEligible(false), | |
254fbb68 MS |
43 | new CubeEQ(glucose).setEligible(false), |
44 | new PianoKeyPattern(glucose).setEligible(false), | |
4c006f7b | 45 | |
e28f168c | 46 | // DanH |
4c006f7b | 47 | new Noise(glucose), |
51227786 | 48 | gplay = new Play(glucose), // XXX do this properly |
e28f168c | 49 | new Pong(glucose), |
4c006f7b | 50 | |
0b1785e3 AG |
51 | // Alex G |
52 | new SineSphere(glucose), | |
53 | ||
4c006f7b MS |
54 | // Shaheen |
55 | new HelixPattern(glucose).setEligible(false), | |
56 | ||
57 | // Toby | |
a673599f | 58 | new GlitchPlasma(glucose), |
254fbb68 | 59 | new FireEffect(glucose).setEligible(false), |
b4aaf4e4 | 60 | new StripBounce(glucose), |
254fbb68 MS |
61 | new SoundRain(glucose).setEligible(false), |
62 | new SoundSpikes(glucose).setEligible(false), | |
821ceae9 | 63 | new FaceSync(glucose), |
b6641090 MS |
64 | |
65 | // Jack | |
66 | new Swim(glucose), | |
8185ec8f | 67 | new Balance(glucose), |
b6641090 | 68 | |
8185ec8f | 69 | // Tim |
b6641090 MS |
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 | |
51227786 | 78 | // new Sandbox(glucose), |
467c8c60 | 79 | new TowerParams(glucose), |
b6641090 MS |
80 | new DriveableCrossSections(glucose), |
81 | new GranimTestPattern2(glucose), | |
51227786 MS |
82 | |
83 | //JR | |
a7c8d80a | 84 | new Gimbal(glucose), |
51227786 | 85 | |
b6641090 MS |
86 | // Sam |
87 | new JazzRainbow(glucose), | |
80785186 | 88 | |
0208d845 AB |
89 | // Arjun |
90 | new TelevisionStatic(glucose), | |
91 | new AbstractPainting(glucose), | |
92 | new Spirality(glucose), | |
a7c8d80a | 93 | |
254d34c0 | 94 | // Basic test patterns for reference, not art |
bfff6bc2 | 95 | new TestCubePattern(glucose), |
186bc4d3 | 96 | new TestTowerPattern(glucose), |
0ba6ac44 | 97 | new TestProjectionPattern(glucose), |
254fbb68 | 98 | new TestStripPattern(glucose), |
1d75c8a9 MS |
99 | new TestBassMapping(glucose), |
100 | new TestFloorMapping(glucose), | |
101 | new TestSpeakerMapping(glucose), | |
186bc4d3 MS |
102 | // new TestHuePattern(glucose), |
103 | // new TestXPattern(glucose), | |
104 | // new TestYPattern(glucose), | |
105 | // new TestZPattern(glucose), | |
f3f5a876 | 106 | |
49815cc0 MS |
107 | }; |
108 | } | |
109 | ||
110 | LXTransition[] transitions(GLucose glucose) { | |
111 | return new LXTransition[] { | |
3f8be614 | 112 | new DissolveTransition(lx), |
ed149627 | 113 | new MaskTransition(glucose), |
49815cc0 | 114 | new SwipeTransition(glucose), |
3f8be614 | 115 | new FadeTransition(lx), |
49815cc0 MS |
116 | }; |
117 | } | |
118 | ||
119 | LXEffect[] effects(GLucose glucose) { | |
120 | return new LXEffect[] { | |
121 | new FlashEffect(lx), | |
3f8be614 | 122 | new BoomEffect(glucose), |
e28f168c | 123 | new DualBlender(glucose), |
d626bc9b MS |
124 | // new DesaturationEffect(lx), |
125 | new ColorFuckerEffect(glucose), | |
49815cc0 MS |
126 | }; |
127 | } |