Project

General

Profile

« Previous | Next » 

Revision 46ab4363

Added by Leszek Koltunski about 7 years ago

1st attempt to restore internal variables in Multiblur.

View differences:

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