Project

General

Profile

« Previous | Next » 

Revision 52e8e76a

Added by Leszek Koltunski almost 4 years ago

Before somehow the Dynamics sometimes tolerated not being reset to beginning before next use. New version doesn't - correct that in two apps.

View differences:

src/main/java/org/distorted/examples/deform/DeformRenderer.java
76 76
   private VertexEffectDistort mMovingDistort, mReleasedDistort;
77 77
   private VertexEffectDeform mMovingDeform, mReleasedDeform;
78 78

  
79
   private Dynamic3D mReleasedDistortDynamic, mReleasedDeformDynamic, mReleasedShearDynamic;
80

  
79 81
///////////////////////////////////////////////////////////////////////////////////////////////////
80 82

  
81 83
   DeformRenderer(GLSurfaceView view)
......
91 93
      mEffects.apply( new MatrixEffectScale(mScale) );
92 94

  
93 95
      // DISTORT
94
      Dynamic3D releasedDistortDynamic = new Dynamic3D(NUM_VECTORS*500, 0.5f);
95
      releasedDistortDynamic.setMode(Dynamic3D.MODE_PATH);
96
      mReleasedDistortDynamic = new Dynamic3D(NUM_VECTORS*500, 0.5f);
97
      mReleasedDistortDynamic.setMode(Dynamic3D.MODE_PATH);
96 98
      Dynamic3D movingDistortDynamic = new Dynamic3D(0,0.5f);
97 99
      movingDistortDynamic.setMode(Dynamic3D.MODE_PATH);
98 100

  
......
101 103
      for(int i=0; i<NUM_VECTORS; i++)
102 104
        {
103 105
        vDistort[i] = new Static3D(0,0,0);
104
        releasedDistortDynamic.add(vDistort[i]);
106
        mReleasedDistortDynamic.add(vDistort[i]);
105 107
        }
106 108

  
107 109
      movingDistortDynamic.add(vDistort[0]);
108 110

  
109 111
      // Deform
110
      Dynamic3D releasedDeformDynamic = new Dynamic3D(NUM_VECTORS*500, 0.5f);
111
      releasedDeformDynamic.setMode(Dynamic3D.MODE_PATH);
112
      mReleasedDeformDynamic = new Dynamic3D(NUM_VECTORS*500, 0.5f);
113
      mReleasedDeformDynamic.setMode(Dynamic3D.MODE_PATH);
112 114
      Dynamic3D movingDeformDynamic = new Dynamic3D(0,0.5f);
113 115
      movingDeformDynamic.setMode(Dynamic3D.MODE_PATH);
114 116

  
......
117 119
      for(int i=0; i<NUM_VECTORS; i++)
118 120
        {
119 121
        vDeform[i] = new Static3D(0,0,0);
120
        releasedDeformDynamic.add(vDeform[i]);
122
        mReleasedDeformDynamic.add(vDeform[i]);
121 123
        }
122 124

  
123 125
      movingDeformDynamic.add(vDeform[0]);
124 126

  
125 127
      // Shear
126
      Dynamic3D releasedShearDynamic = new Dynamic3D(NUM_VECTORS*500, 0.5f);
127
      releasedShearDynamic.setMode(Dynamic3D.MODE_PATH);
128
      mReleasedShearDynamic = new Dynamic3D(NUM_VECTORS*500, 0.5f);
129
      mReleasedShearDynamic.setMode(Dynamic3D.MODE_PATH);
128 130
      Dynamic3D movingShearDynamic = new Dynamic3D(0,0.5f);
129 131
      movingShearDynamic.setMode(Dynamic3D.MODE_PATH);
130 132

  
......
133 135
      for(int i=0; i<NUM_VECTORS; i++)
134 136
        {
135 137
        vShear[i] = new Static3D(0,0,0);
136
        releasedShearDynamic.add(vShear[i]);
138
        mReleasedShearDynamic.add(vShear[i]);
137 139
        }
138 140

  
139 141
      movingShearDynamic.add(vShear[0]);
......
143 145

  
144 146
      Static1D deformRadius = new Static1D(0.5f);
145 147

  
146
      mMovingDistort   = new VertexEffectDistort( movingDistortDynamic  ,               mTouchPoint, mRegion);
147
      mMovingDeform    = new VertexEffectDeform ( movingDeformDynamic   , deformRadius, mTouchPoint, mRegion);
148
      mMovingShear     = new MatrixEffectShear  ( movingShearDynamic    ,               mTouchPoint         );
149
      mReleasedDistort = new VertexEffectDistort( releasedDistortDynamic,               mTouchPoint, mRegion);
150
      mReleasedDeform  = new VertexEffectDeform ( releasedDeformDynamic , deformRadius, mTouchPoint, mRegion);
151
      mReleasedShear   = new MatrixEffectShear  ( releasedShearDynamic  ,               mTouchPoint         );
148
      mMovingDistort   = new VertexEffectDistort( movingDistortDynamic   ,               mTouchPoint, mRegion);
149
      mMovingDeform    = new VertexEffectDeform ( movingDeformDynamic    , deformRadius, mTouchPoint, mRegion);
150
      mMovingShear     = new MatrixEffectShear  ( movingShearDynamic     ,               mTouchPoint         );
151
      mReleasedDistort = new VertexEffectDistort( mReleasedDistortDynamic,               mTouchPoint, mRegion);
152
      mReleasedDeform  = new VertexEffectDeform ( mReleasedDeformDynamic , deformRadius, mTouchPoint, mRegion);
153
      mReleasedShear   = new MatrixEffectShear  ( mReleasedShearDynamic  ,               mTouchPoint         );
152 154
      }
153 155

  
154 156
///////////////////////////////////////////////////////////////////////////////////////////////////
......
301 303
                       }
302 304
                     vDistort[NUM_VECTORS-1].set(0,0,0);
303 305
                     mEffects.apply(mReleasedDistort);
306
                     mReleasedDistortDynamic.resetToBeginning();
304 307
                     mReleasedDistort.notifyWhenFinished(this);
305 308
                     break;
306 309
       case DEFORM : for(int i=1; i<NUM_VECTORS-1; i++)
......
309 312
                       }
310 313
                     vDeform[NUM_VECTORS-1].set(0,0,0);
311 314
                     mEffects.apply(mReleasedDeform);
315
                     mReleasedDeformDynamic.resetToBeginning();
312 316
                     mReleasedDeform.notifyWhenFinished(this);
313 317
                     break;
314 318
       case SHEAR  : for(int i=1; i<NUM_VECTORS-1; i++)
......
317 321
                       }
318 322
                     vShear[NUM_VECTORS-1].set(0,0,0);
319 323
                     mEffects.apply(mReleasedShear);
324
                     mReleasedShearDynamic.resetToBeginning();
320 325
                     mReleasedShear.notifyWhenFinished(this);
321 326
                     break;
322 327
       }

Also available in: Unified diff