Revision 6173632c
Added by Leszek Koltunski almost 7 years ago
src/main/java/org/distorted/examples/movingeffects/MovingEffectsSurfaceView.java | ||
---|---|---|
27 | 27 |
import android.view.MotionEvent; |
28 | 28 |
import android.util.AttributeSet; |
29 | 29 |
|
30 |
import org.distorted.library.effect.EffectType; |
|
31 |
import org.distorted.library.effect.FragmentEffectAlpha; |
|
32 |
import org.distorted.library.effect.FragmentEffectChroma; |
|
33 |
import org.distorted.library.effect.VertexEffectDistort; |
|
34 |
import org.distorted.library.effect.VertexEffectSink; |
|
35 |
import org.distorted.library.effect.VertexEffectSwirl; |
|
30 | 36 |
import org.distorted.library.main.DistortedEffects; |
31 |
import org.distorted.library.EffectTypes; |
|
32 | 37 |
import org.distorted.library.type.Dynamic3D; |
33 | 38 |
import org.distorted.library.type.Dynamic4D; |
34 | 39 |
import org.distorted.library.type.Static1D; |
... | ... | |
42 | 47 |
{ |
43 | 48 |
private static final int LOOP_TIME = 5000; |
44 | 49 |
private static final int NUM_POINTS= 100; |
45 |
|
|
50 |
|
|
46 | 51 |
public static final int EFFECT_POINTS=0; |
47 | 52 |
public static final int EFFECT_BUBBLE=1; |
48 | 53 |
public static final int EFFECT_SINK =2; |
... | ... | |
66 | 71 |
|
67 | 72 |
private MovingEffectsRenderer mRenderer; |
68 | 73 |
|
74 |
private VertexEffectDistort mEffectDistort; |
|
75 |
private VertexEffectSink mEffectSink; |
|
76 |
private VertexEffectSwirl mEffectSwirl; |
|
77 |
private FragmentEffectChroma mEffectChroma; |
|
78 |
private FragmentEffectAlpha mEffectAlpha; |
|
79 |
|
|
69 | 80 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
70 | 81 |
|
71 | 82 |
public MovingEffectsSurfaceView(Context context, AttributeSet attrs) |
... | ... | |
88 | 99 |
setFocusableInTouchMode(true); |
89 | 100 |
setRenderer(mRenderer); |
90 | 101 |
} |
102 |
|
|
103 |
mEffectDistort = new VertexEffectDistort(new Static3D(0,0,mMax/10) , di3D, dr); |
|
104 |
mEffectSink = new VertexEffectSink(new Static1D(10), di3D, dr); |
|
105 |
mEffectSwirl = new VertexEffectSwirl( new Static1D(30), di3D, dr); |
|
106 |
mEffectAlpha = new FragmentEffectAlpha(new Static1D(0.5f), mRegion, true); |
|
107 |
mEffectChroma = new FragmentEffectChroma(new Static1D(0.5f), new Static3D(1,0,0), mRegion, true); |
|
91 | 108 |
} |
92 | 109 |
|
93 | 110 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
... | ... | |
119 | 136 |
synchronized(lock) |
120 | 137 |
{ |
121 | 138 |
DistortedEffects q = mRenderer.getEffects(); |
122 |
q.abortEffects(EffectTypes.VERTEX);
|
|
123 |
q.abortEffects(EffectTypes.FRAGMENT);
|
|
124 |
q.distort( new Static3D(0,0,mMax/10) , di3D, dr);
|
|
139 |
q.abortByType(EffectType.VERTEX);
|
|
140 |
q.abortByType(EffectType.FRAGMENT);
|
|
141 |
q.apply(mEffectDistort);
|
|
125 | 142 |
mCurrEffect = EFFECT_BUBBLE; |
126 | 143 |
} |
127 | 144 |
} |
... | ... | |
135 | 152 |
synchronized(lock) |
136 | 153 |
{ |
137 | 154 |
DistortedEffects q = mRenderer.getEffects(); |
138 |
q.abortEffects(EffectTypes.VERTEX);
|
|
139 |
q.abortEffects(EffectTypes.FRAGMENT);
|
|
140 |
q.sink(new Static1D(10), di3D, dr);
|
|
155 |
q.abortByType(EffectType.VERTEX);
|
|
156 |
q.abortByType(EffectType.FRAGMENT);
|
|
157 |
q.apply(mEffectSink);
|
|
141 | 158 |
mCurrEffect = EFFECT_SINK; |
142 | 159 |
} |
143 | 160 |
} |
... | ... | |
151 | 168 |
synchronized(lock) |
152 | 169 |
{ |
153 | 170 |
DistortedEffects q = mRenderer.getEffects(); |
154 |
q.abortEffects(EffectTypes.VERTEX);
|
|
155 |
q.abortEffects(EffectTypes.FRAGMENT);
|
|
156 |
q.chroma(new Static1D(0.5f), new Static3D(1,0,0), mRegion, true);
|
|
171 |
q.abortByType(EffectType.VERTEX);
|
|
172 |
q.abortByType(EffectType.FRAGMENT);
|
|
173 |
q.apply(mEffectChroma);
|
|
157 | 174 |
mCurrEffect = EFFECT_CHROMA; |
158 | 175 |
} |
159 | 176 |
} |
... | ... | |
167 | 184 |
synchronized(lock) |
168 | 185 |
{ |
169 | 186 |
DistortedEffects q = mRenderer.getEffects(); |
170 |
q.abortEffects(EffectTypes.VERTEX);
|
|
171 |
q.abortEffects(EffectTypes.FRAGMENT);
|
|
172 |
q.alpha(new Static1D(0.5f), mRegion, true);
|
|
187 |
q.abortByType(EffectType.VERTEX);
|
|
188 |
q.abortByType(EffectType.FRAGMENT);
|
|
189 |
q.apply(mEffectAlpha);
|
|
173 | 190 |
mCurrEffect = EFFECT_TRANS; |
174 | 191 |
} |
175 | 192 |
} |
... | ... | |
183 | 200 |
synchronized(lock) |
184 | 201 |
{ |
185 | 202 |
DistortedEffects q = mRenderer.getEffects(); |
186 |
q.abortEffects(EffectTypes.VERTEX);
|
|
187 |
q.abortEffects(EffectTypes.FRAGMENT);
|
|
188 |
q.swirl( new Static1D(30), di3D, dr);
|
|
203 |
q.abortByType(EffectType.VERTEX);
|
|
204 |
q.abortByType(EffectType.FRAGMENT);
|
|
205 |
q.apply(mEffectSwirl);
|
|
189 | 206 |
mCurrEffect = EFFECT_SWIRL; |
190 | 207 |
} |
191 | 208 |
} |
... | ... | |
197 | 214 |
synchronized(lock) |
198 | 215 |
{ |
199 | 216 |
DistortedEffects q = mRenderer.getEffects(); |
200 |
q.abortEffects(EffectTypes.VERTEX);
|
|
201 |
q.abortEffects(EffectTypes.FRAGMENT);
|
|
217 |
q.abortByType(EffectType.VERTEX);
|
|
218 |
q.abortByType(EffectType.FRAGMENT);
|
|
202 | 219 |
di3D.removeAll(); |
203 | 220 |
mRegion.removeAll(); |
204 | 221 |
mCurrEffect = EFFECT_POINTS; |
Also available in: Unified diff
Further progress with Apps: 21 (out of 30) compile now.