Revision 46ab4363
Added by Leszek Koltunski about 7 years ago
src/main/java/org/distorted/examples/multiblur/MultiblurRenderer.java | ||
---|---|---|
73 | 73 |
private DistortedScreen mScreen; |
74 | 74 |
private DynamicQuat mQuatInt1, mQuatInt2; |
75 | 75 |
private int mDistance; |
76 |
private boolean[] mBlurStatus; |
|
76 | 77 |
|
77 | 78 |
Static4D mQuat1, mQuat2; |
78 | 79 |
int mScreenMin; |
... | ... | |
84 | 85 |
mView = v; |
85 | 86 |
mDistance = -1; |
86 | 87 |
|
88 |
mBlurStatus = new boolean[NUM_OBJECTS]; |
|
87 | 89 |
mMoveDynamic= new Dynamic3D[NUM_OBJECTS]; |
88 | 90 |
mMoveVector = new Static3D[NUM_OBJECTS]; |
89 | 91 |
mEffects = new DistortedEffects[NUM_OBJECTS]; |
... | ... | |
95 | 97 |
mMoveDynamic[i] = new Dynamic3D(); |
96 | 98 |
|
97 | 99 |
mMoveDynamic[i].add(mMoveVector[i]); |
100 |
mBlurStatus[i] = false; |
|
98 | 101 |
} |
99 | 102 |
|
100 | 103 |
mBlurDynamic= new Dynamic1D(); |
101 | 104 |
mBlurVector = new Static1D(10); |
102 | 105 |
mBlurDynamic.add(mBlurVector); |
103 | 106 |
|
107 |
mBlurStatus[0] = true; |
|
104 | 108 |
mEffects[0].blur(mBlurDynamic); |
105 | 109 |
|
106 | 110 |
MeshCubes mesh = new MeshCubes(1,1,false); |
... | ... | |
206 | 210 |
} |
207 | 211 |
} |
208 | 212 |
|
213 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
214 |
|
|
215 |
int getDistance() |
|
216 |
{ |
|
217 |
return mDistance; |
|
218 |
} |
|
219 |
|
|
209 | 220 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
210 | 221 |
|
211 | 222 |
void setDistance(int distance) |
... | ... | |
215 | 226 |
android.util.Log.e("renderer", "distance: "+distance); |
216 | 227 |
} |
217 | 228 |
|
229 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
230 |
|
|
231 |
int getRange() |
|
232 |
{ |
|
233 |
return (int)mBlurVector.getX(); |
|
234 |
} |
|
235 |
|
|
218 | 236 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
219 | 237 |
|
220 | 238 |
void setRange(int range) |
... | ... | |
225 | 243 |
|
226 | 244 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
227 | 245 |
|
228 |
void pressed(int number, boolean checked) |
|
246 |
boolean[] getChecked() |
|
247 |
{ |
|
248 |
return mBlurStatus; |
|
249 |
} |
|
250 |
|
|
251 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
252 |
|
|
253 |
void setChecked(int number, boolean checked) |
|
229 | 254 |
{ |
230 | 255 |
if( number>=0 && number<=7 && mEffects!=null ) |
231 | 256 |
{ |
232 | 257 |
if( checked ) |
233 | 258 |
{ |
234 |
long effectNum = mEffects[number].blur(mBlurDynamic); |
|
235 |
|
|
236 |
if( effectNum<0 ) |
|
259 |
if( !mBlurStatus[number] ) |
|
237 | 260 |
{ |
238 |
android.util.Log.e("renderer", "Error, failed to add BLUR effect, number: "+number ); |
|
261 |
mBlurStatus[number] = true; |
|
262 |
mEffects[number].blur(mBlurDynamic); |
|
239 | 263 |
} |
240 | 264 |
else |
241 | 265 |
{ |
242 |
android.util.Log.e("renderer", "Successfully added BLUR effect, number: "+number );
|
|
266 |
android.util.Log.e("renderer", "Error, failed to add BLUR effect, number: "+number );
|
|
243 | 267 |
} |
244 | 268 |
} |
245 | 269 |
else |
246 | 270 |
{ |
247 |
int numAborted = mEffects[number].abortEffects(EffectNames.BLUR); |
|
248 |
|
|
249 |
if( numAborted!=1 ) |
|
271 |
if( mBlurStatus[number] ) |
|
272 |
{ |
|
273 |
mBlurStatus[number] = false; |
|
274 |
mEffects[number].abortEffects(EffectNames.BLUR); |
|
275 |
} |
|
276 |
else |
|
250 | 277 |
{ |
251 |
android.util.Log.e("renderer", "Error, number: "+number+" unexpected number of effects aborted ("+numAborted+" - should have been 1)" );
|
|
278 |
android.util.Log.e("renderer", "Error, failed to remove BLUR effect, number: "+number );
|
|
252 | 279 |
} |
253 | 280 |
} |
254 | 281 |
} |
Also available in: Unified diff
1st attempt to restore internal variables in Multiblur.