Merge branch 'alexdesktopworking' of https://github.com/sugarcubes/SugarCubes into...
[SugarCubes.git] / SugarCubes.pde
CommitLineData
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 */
e28f168c 25LXPattern gplay;
49815cc0
MS
26
27LXPattern[] patterns(GLucose glucose) {
28 return new LXPattern[] {
e28f168c
AG
29
30 new Gimbal(glucose),
31
32 // DMK
1d75c8a9 33
4c006f7b 34 // Slee
87f6fa39 35 new Swarm(glucose),
e28f168c 36 //new ScreenScrape(glucose),
87f6fa39 37 new SpaceTime(glucose),
1627a617
MS
38 new ShiftingPlane(glucose),
39 new AskewPlanes(glucose),
87f6fa39
MS
40 new Blinders(glucose),
41 new CrossSections(glucose),
42 new Psychedelia(glucose),
4c006f7b
MS
43
44 new Traktor(glucose).setEligible(false),
45 new BassPod(glucose).setEligible(false),
254fbb68
MS
46 new CubeEQ(glucose).setEligible(false),
47 new PianoKeyPattern(glucose).setEligible(false),
4c006f7b 48
e28f168c 49 // DanH
4c006f7b 50 new Noise(glucose),
e28f168c
AG
51 gplay=new Play(glucose), // XXX do this properly
52 new Pong(glucose),
4c006f7b 53
0b1785e3
AG
54 // Alex G
55 new SineSphere(glucose),
56
4c006f7b
MS
57 // Shaheen
58 new HelixPattern(glucose).setEligible(false),
59
60 // Toby
a673599f 61 new GlitchPlasma(glucose),
254fbb68 62 new FireEffect(glucose).setEligible(false),
b4aaf4e4 63 new StripBounce(glucose),
254fbb68
MS
64 new SoundRain(glucose).setEligible(false),
65 new SoundSpikes(glucose).setEligible(false),
821ceae9 66 new FaceSync(glucose),
b6641090
MS
67
68 // Jack
69 new Swim(glucose),
8185ec8f 70 new Balance(glucose),
b6641090 71
8185ec8f 72 // Tim
b6641090
MS
73 new TimPlanes(glucose),
74 new TimPinwheels(glucose),
75 new TimRaindrops(glucose),
76 new TimCubes(glucose),
77 // new TimTrace(glucose),
78 new TimSpheres(glucose),
79
80 // Ben
467c8c60
BM
81 //new Sandbox(glucose),
82 new TowerParams(glucose),
b6641090
MS
83 new DriveableCrossSections(glucose),
84 new GranimTestPattern2(glucose),
85
86 // Sam
87 new JazzRainbow(glucose),
80785186 88
0208d845
AB
89 // Arjun
90 new TelevisionStatic(glucose),
91 new AbstractPainting(glucose),
92 new Spirality(glucose),
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
110LXTransition[] transitions(GLucose glucose) {
111 return new LXTransition[] {
3f8be614 112 new DissolveTransition(lx),
49815cc0 113 new SwipeTransition(glucose),
3f8be614 114 new FadeTransition(lx),
49815cc0
MS
115 };
116}
117
118LXEffect[] effects(GLucose glucose) {
119 return new LXEffect[] {
120 new FlashEffect(lx),
3f8be614 121 new BoomEffect(glucose),
e28f168c
AG
122 //new DesaturationEffect(lx),
123 //new ColorFuckerEffect(glucose),
124 new DualBlender(glucose),
49815cc0
MS
125 };
126}