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