Add cubic gamma correction on brightness
[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 */
25
26LXPattern[] patterns(GLucose glucose) {
27 return new LXPattern[] {
1d75c8a9 28
4c006f7b 29 // Slee
87f6fa39
MS
30 new Swarm(glucose),
31 new SpaceTime(glucose),
1627a617
MS
32 new ShiftingPlane(glucose),
33 new AskewPlanes(glucose),
87f6fa39
MS
34 new Blinders(glucose),
35 new CrossSections(glucose),
36 new Psychedelia(glucose),
4c006f7b
MS
37
38 new Traktor(glucose).setEligible(false),
39 new BassPod(glucose).setEligible(false),
254fbb68
MS
40 new CubeEQ(glucose).setEligible(false),
41 new PianoKeyPattern(glucose).setEligible(false),
4c006f7b
MS
42
43 // Dan
44 new Pong(glucose),
45 new Noise(glucose),
46
0b1785e3
AG
47 // Alex G
48 new SineSphere(glucose),
49
4c006f7b
MS
50 // Shaheen
51 new HelixPattern(glucose).setEligible(false),
52
53 // Toby
a673599f 54 new GlitchPlasma(glucose),
254fbb68 55 new FireEffect(glucose).setEligible(false),
b4aaf4e4 56 new StripBounce(glucose),
254fbb68
MS
57 new SoundRain(glucose).setEligible(false),
58 new SoundSpikes(glucose).setEligible(false),
821ceae9 59 new FaceSync(glucose),
b6641090
MS
60
61 // Jack
62 new Swim(glucose),
8185ec8f 63 new Balance(glucose),
b6641090 64
8185ec8f 65 // Tim
b6641090
MS
66 new TimPlanes(glucose),
67 new TimPinwheels(glucose),
68 new TimRaindrops(glucose),
69 new TimCubes(glucose),
70 // new TimTrace(glucose),
71 new TimSpheres(glucose),
72
73 // Ben
74 new DriveableCrossSections(glucose),
75 new GranimTestPattern2(glucose),
76
77 // Sam
78 new JazzRainbow(glucose),
80785186 79
254d34c0 80 // Basic test patterns for reference, not art
bfff6bc2 81 new TestCubePattern(glucose),
186bc4d3 82 new TestTowerPattern(glucose),
0ba6ac44 83 new TestProjectionPattern(glucose),
254fbb68 84 new TestStripPattern(glucose),
1d75c8a9
MS
85 new TestBassMapping(glucose),
86 new TestFloorMapping(glucose),
87 new TestSpeakerMapping(glucose),
186bc4d3
MS
88 // new TestHuePattern(glucose),
89 // new TestXPattern(glucose),
90 // new TestYPattern(glucose),
91 // new TestZPattern(glucose),
f3f5a876 92
49815cc0
MS
93 };
94}
95
96LXTransition[] transitions(GLucose glucose) {
97 return new LXTransition[] {
3f8be614 98 new DissolveTransition(lx),
49815cc0 99 new SwipeTransition(glucose),
3f8be614 100 new FadeTransition(lx),
49815cc0
MS
101 };
102}
103
104LXEffect[] effects(GLucose glucose) {
105 return new LXEffect[] {
106 new FlashEffect(lx),
3f8be614 107 new BoomEffect(glucose),
49815cc0 108 new DesaturationEffect(lx),
e7f14d4d 109 new ColorFuckerEffect(glucose),
49815cc0
MS
110 };
111}
112