Revision 8c893ffc
Added by Leszek Koltunski almost 8 years ago
src/main/java/org/distorted/library/EffectQueueFragment.java | ||
---|---|---|
23 | 23 |
|
24 | 24 |
import org.distorted.library.message.EffectMessage; |
25 | 25 |
import org.distorted.library.type.Data1D; |
26 |
import org.distorted.library.type.Data3D; |
|
26 | 27 |
import org.distorted.library.type.Data4D; |
27 | 28 |
import org.distorted.library.type.Dynamic1D; |
29 |
import org.distorted.library.type.Dynamic3D; |
|
28 | 30 |
import org.distorted.library.type.Dynamic4D; |
29 | 31 |
import org.distorted.library.type.Static1D; |
30 | 32 |
import org.distorted.library.type.Static3D; |
... | ... | |
90 | 92 |
} |
91 | 93 |
} |
92 | 94 |
|
93 |
if( mInter[1][i]!=null ) mInter[1][i].interpolateMain(mBuf, 4*i, mCurrentDuration[i]); |
|
95 |
if( mInter[1][i]!=null ) mInter[1][i].interpolateMain( mBuf, 4*i , mCurrentDuration[i]); |
|
96 |
|
|
97 |
if( mInter[2][i]!=null ) mInter[2][i].interpolateMain(mUniforms, NUM_UNIFORMS*i+1, mCurrentDuration[i]); |
|
94 | 98 |
|
95 | 99 |
mCurrentDuration[i] += step; |
96 | 100 |
} |
... | ... | |
187 | 191 |
mBuf[4*mNumEffects+2] = 1000*mObjHalfX; |
188 | 192 |
mBuf[4*mNumEffects+3] = 1000*mObjHalfY; |
189 | 193 |
|
194 |
mInter[2][mNumEffects] = null; |
|
195 |
|
|
190 | 196 |
return addBase(eln); |
191 | 197 |
} |
192 | 198 |
|
... | ... | |
223 | 229 |
} |
224 | 230 |
else return -1; |
225 | 231 |
|
232 |
mInter[2][mNumEffects] = null; |
|
233 |
|
|
226 | 234 |
return addBase(eln); |
227 | 235 |
} |
228 | 236 |
|
... | ... | |
232 | 240 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
233 | 241 |
// chroma |
234 | 242 |
|
235 |
synchronized long add(EffectNames eln, Data1D level, Static3D color, Data4D region)
|
|
243 |
synchronized long add(EffectNames eln, Data1D level, Data3D color, Data4D region)
|
|
236 | 244 |
{ |
237 | 245 |
if( mMax[INDEX]>mNumEffects ) |
238 | 246 |
{ |
... | ... | |
247 | 255 |
} |
248 | 256 |
else return -1; |
249 | 257 |
|
250 |
mUniforms[NUM_UNIFORMS*mNumEffects+1] = color.getX(); |
|
251 |
mUniforms[NUM_UNIFORMS*mNumEffects+2] = color.getY(); |
|
252 |
mUniforms[NUM_UNIFORMS*mNumEffects+3] = color.getZ(); |
|
258 |
if( color instanceof Dynamic3D) |
|
259 |
{ |
|
260 |
mInter[2][mNumEffects] = (Dynamic3D)color; |
|
261 |
} |
|
262 |
else if( color instanceof Static3D ) |
|
263 |
{ |
|
264 |
mInter[2][mNumEffects] = null; |
|
265 |
mUniforms[NUM_UNIFORMS*mNumEffects+1] = ((Static3D)color).getX(); |
|
266 |
mUniforms[NUM_UNIFORMS*mNumEffects+2] = ((Static3D)color).getY(); |
|
267 |
mUniforms[NUM_UNIFORMS*mNumEffects+3] = ((Static3D)color).getZ(); |
|
268 |
} |
|
269 |
else return -1; |
|
253 | 270 |
|
254 | 271 |
if( region instanceof Dynamic4D) |
255 | 272 |
mInter[1][mNumEffects] = (Dynamic4D)region; |
... | ... | |
272 | 289 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
273 | 290 |
// chroma |
274 | 291 |
|
275 |
synchronized long add(EffectNames eln, Data1D level, Static3D color)
|
|
292 |
synchronized long add(EffectNames eln, Data1D level, Data3D color)
|
|
276 | 293 |
{ |
277 | 294 |
if( mMax[INDEX]>mNumEffects ) |
278 | 295 |
{ |
... | ... | |
287 | 304 |
} |
288 | 305 |
else return -1; |
289 | 306 |
|
290 |
mUniforms[NUM_UNIFORMS*mNumEffects+1] = color.getX(); |
|
291 |
mUniforms[NUM_UNIFORMS*mNumEffects+2] = color.getY(); |
|
292 |
mUniforms[NUM_UNIFORMS*mNumEffects+3] = color.getZ(); |
|
293 |
|
|
294 |
mInter[1][mNumEffects] = null; // |
|
295 |
mBuf[4*mNumEffects+2] = 1000*mObjHalfX; // i.e. null region |
|
296 |
mBuf[4*mNumEffects+3] = 1000*mObjHalfY; // |
|
297 |
|
|
298 |
return addBase(eln); |
|
299 |
} |
|
300 |
|
|
301 |
return -1; |
|
302 |
} |
|
303 |
|
|
304 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
305 |
// chroma |
|
306 |
|
|
307 |
synchronized long add(EffectNames eln, Data4D chroma, Data4D region) |
|
308 |
{ |
|
309 |
if( mMax[INDEX]>mNumEffects ) |
|
310 |
{ |
|
311 |
EffectNames.fillWithUnities(eln.ordinal(), mUniforms, NUM_UNIFORMS*mNumEffects); |
|
312 |
|
|
313 |
if( chroma instanceof Dynamic4D) |
|
314 |
mInter[0][mNumEffects] = (Dynamic4D)chroma; |
|
315 |
else if( chroma instanceof Static4D ) |
|
307 |
if( color instanceof Dynamic3D) |
|
316 | 308 |
{ |
317 |
mInter[0][mNumEffects] = null; |
|
318 |
mUniforms[NUM_UNIFORMS*mNumEffects ] = ((Static4D)chroma).getX(); |
|
319 |
mUniforms[NUM_UNIFORMS*mNumEffects+1] = ((Static4D)chroma).getY(); |
|
320 |
mUniforms[NUM_UNIFORMS*mNumEffects+2] = ((Static4D)chroma).getZ(); |
|
321 |
mUniforms[NUM_UNIFORMS*mNumEffects+3] = ((Static4D)chroma).getW(); |
|
309 |
mInter[2][mNumEffects] = (Dynamic3D)color; |
|
322 | 310 |
} |
323 |
else return -1; |
|
324 |
|
|
325 |
if( region instanceof Dynamic4D) |
|
326 |
mInter[1][mNumEffects] = (Dynamic4D)region; |
|
327 |
else if( region instanceof Static4D ) |
|
328 |
{ |
|
329 |
mInter[1][mNumEffects] = null; |
|
330 |
mBuf[4*mNumEffects ] = ((Static4D)region).getX(); |
|
331 |
mBuf[4*mNumEffects+1] = ((Static4D)region).getY(); |
|
332 |
mBuf[4*mNumEffects+2] = ((Static4D)region).getZ(); |
|
333 |
mBuf[4*mNumEffects+3] = ((Static4D)region).getW(); |
|
334 |
} |
|
335 |
else return -1; |
|
336 |
|
|
337 |
return addBase(eln); |
|
338 |
} |
|
339 |
|
|
340 |
return -1; |
|
341 |
} |
|
342 |
|
|
343 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
344 |
// chroma |
|
345 |
|
|
346 |
synchronized long add(EffectNames eln, Data4D chroma) |
|
347 |
{ |
|
348 |
if( mMax[INDEX]>mNumEffects ) |
|
349 |
{ |
|
350 |
EffectNames.fillWithUnities(eln.ordinal(), mUniforms, NUM_UNIFORMS*mNumEffects); |
|
351 |
|
|
352 |
if( chroma instanceof Dynamic4D) |
|
353 |
mInter[0][mNumEffects] = (Dynamic4D)chroma; |
|
354 |
else if( chroma instanceof Static4D ) |
|
311 |
else if( color instanceof Static3D ) |
|
355 | 312 |
{ |
356 |
mInter[0][mNumEffects] = null; |
|
357 |
mUniforms[NUM_UNIFORMS*mNumEffects ] = ((Static4D)chroma).getX(); |
|
358 |
mUniforms[NUM_UNIFORMS*mNumEffects+1] = ((Static4D)chroma).getY(); |
|
359 |
mUniforms[NUM_UNIFORMS*mNumEffects+2] = ((Static4D)chroma).getZ(); |
|
360 |
mUniforms[NUM_UNIFORMS*mNumEffects+3] = ((Static4D)chroma).getW(); |
|
313 |
mInter[2][mNumEffects] = null; |
|
314 |
mUniforms[NUM_UNIFORMS*mNumEffects+1] = ((Static3D)color).getX(); |
|
315 |
mUniforms[NUM_UNIFORMS*mNumEffects+2] = ((Static3D)color).getY(); |
|
316 |
mUniforms[NUM_UNIFORMS*mNumEffects+3] = ((Static3D)color).getZ(); |
|
361 | 317 |
} |
362 | 318 |
else return -1; |
363 | 319 |
|
... | ... | |
367 | 323 |
|
368 | 324 |
return addBase(eln); |
369 | 325 |
} |
370 |
|
|
326 |
|
|
371 | 327 |
return -1; |
372 | 328 |
} |
373 |
|
|
329 |
|
|
374 | 330 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
375 | 331 |
// end of FragmentEffect |
376 | 332 |
} |
Also available in: Unified diff
Further reduce the distortedObject's API - now only 26 methods, 1/4 of the 104 before the reorganization.