Add some documentation and cleanup of mapping code
[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[] {
9b37e50c 28
5129affb
MS
29 new ShiftingPlane(glucose),
30 new AskewPlanes(glucose),
87f6fa39
MS
31 new Swarm(glucose),
32 new SpaceTime(glucose),
254fbb68 33 new HelixPattern(glucose).setEligible(false),
466150f6
AG
34 new Pong(glucose),
35 new Noise(glucose),
87f6fa39
MS
36 new Blinders(glucose),
37 new CrossSections(glucose),
38 new Psychedelia(glucose),
254fbb68
MS
39 new CubeEQ(glucose).setEligible(false),
40 new PianoKeyPattern(glucose).setEligible(false),
a673599f 41 new GlitchPlasma(glucose),
254fbb68 42 new FireEffect(glucose).setEligible(false),
b4aaf4e4 43 new StripBounce(glucose),
254fbb68
MS
44 new SoundRain(glucose).setEligible(false),
45 new SoundSpikes(glucose).setEligible(false),
821ceae9 46 new FaceSync(glucose),
b6641090
MS
47
48 // Jack
49 new Swim(glucose),
7e052aba 50 new Breathe(glucose),
b6641090
MS
51
52 new TimPlanes(glucose),
53 new TimPinwheels(glucose),
54 new TimRaindrops(glucose),
55 new TimCubes(glucose),
56 // new TimTrace(glucose),
57 new TimSpheres(glucose),
58
59 // Ben
60 new DriveableCrossSections(glucose),
61 new GranimTestPattern2(glucose),
62
63 // Sam
64 new JazzRainbow(glucose),
80785186 65
254d34c0 66 // Basic test patterns for reference, not art
bfff6bc2 67 new TestCubePattern(glucose),
186bc4d3 68 new TestTowerPattern(glucose),
0ba6ac44 69 new TestProjectionPattern(glucose),
254fbb68 70 new TestStripPattern(glucose),
186bc4d3
MS
71 // new TestHuePattern(glucose),
72 // new TestXPattern(glucose),
73 // new TestYPattern(glucose),
74 // new TestZPattern(glucose),
f3f5a876 75
49815cc0
MS
76 };
77}
78
79LXTransition[] transitions(GLucose glucose) {
80 return new LXTransition[] {
3f8be614 81 new DissolveTransition(lx),
49815cc0 82 new SwipeTransition(glucose),
3f8be614 83 new FadeTransition(lx),
49815cc0
MS
84 };
85}
86
87LXEffect[] effects(GLucose glucose) {
88 return new LXEffect[] {
89 new FlashEffect(lx),
3f8be614 90 new BoomEffect(glucose),
49815cc0
MS
91 new DesaturationEffect(lx),
92 };
93}
94