Add a frame blurring effect
[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 // Slee
30 new Swarm(glucose),
31 new SpaceTime(glucose),
32 new ShiftingPlane(glucose),
33 new AskewPlanes(glucose),
34 new Blinders(glucose),
35 new CrossSections(glucose),
36 new Psychedelia(glucose),
37
38 new Traktor(glucose).setEligible(false),
39 new BassPod(glucose).setEligible(false),
40 new CubeEQ(glucose).setEligible(false),
41 new PianoKeyPattern(glucose).setEligible(false),
42
43 // DanH
44 new Noise(glucose),
45 new Play(glucose),
46 new Pong(glucose),
47
48 // Alex G
49 new SineSphere(glucose),
50
51 // Shaheen
52 new HelixPattern(glucose).setEligible(false),
53
54 // Toby
55 new GlitchPlasma(glucose),
56 new FireEffect(glucose).setEligible(false),
57 new StripBounce(glucose),
58 new SoundRain(glucose).setEligible(false),
59 new SoundSpikes(glucose).setEligible(false),
60 new FaceSync(glucose),
61
62 // Jack
63 new Swim(glucose),
64 new Balance(glucose),
65
66 // Tim
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 // Ben
75 // new Sandbox(glucose),
76 new TowerParams(glucose),
77 new DriveableCrossSections(glucose),
78 new GranimTestPattern2(glucose),
79
80 //JR
81 new Gimbal(glucose),
82
83 // Sam
84 new JazzRainbow(glucose),
85
86 // Arjun
87 new TelevisionStatic(glucose),
88 new AbstractPainting(glucose),
89 new Spirality(glucose),
90
91 // Basic test patterns for reference, not art
92 new TestCubePattern(glucose),
93 new TestTowerPattern(glucose),
94 new TestProjectionPattern(glucose),
95 new TestStripPattern(glucose),
96 new TestBassMapping(glucose),
97 new TestFloorMapping(glucose),
98 new TestSpeakerMapping(glucose),
99 // new TestHuePattern(glucose),
100 // new TestXPattern(glucose),
101 // new TestYPattern(glucose),
102 // new TestZPattern(glucose),
103
104 };
105 }
106
107 LXTransition[] transitions(GLucose glucose) {
108 return new LXTransition[] {
109 new DissolveTransition(lx),
110 new MultiplyTransition(glucose),
111 new ScreenTransition(glucose),
112 new BurnTransition(glucose),
113 new DodgeTransition(glucose),
114 new OverlayTransition(glucose),
115 new AddTransition(glucose),
116 new SubtractTransition(glucose),
117 new SoftLightTransition(glucose),
118 new SwipeTransition(glucose),
119 new FadeTransition(lx),
120 };
121 }
122
123 LXEffect[] effects(GLucose glucose) {
124 return new LXEffect[] {
125 new FlashEffect(lx),
126 new BoomEffect(glucose),
127 new BlurEffect(glucose),
128 new DesaturationEffect(lx),
129 new ColorFuckerEffect(glucose),
130 };
131 }