Project

General

Profile

« Previous | Next » 

Revision 02ef26bc

Added by Leszek Koltunski over 7 years ago

Preparation to make the WAVE effect fully 3D

View differences:

src/main/java/org/distorted/library/EffectQueueVertex.java
167 167
    if( mName[effect]==EffectNames.SWIRL.ordinal() )
168 168
      {
169 169
      d = Math.PI*mUniforms[NUM_UNIFORMS*effect]/180;
170
      mUniforms[NUM_UNIFORMS*effect+4] = (float)Math.sin(d);
171
      mUniforms[NUM_UNIFORMS*effect+5] = (float)Math.cos(d);
170
      mUniforms[NUM_UNIFORMS*effect  ] = (float)Math.sin(d);
171
      mUniforms[NUM_UNIFORMS*effect+4] = (float)Math.cos(d);
172 172
      }
173 173
    if( mName[effect]==EffectNames.WAVE.ordinal() )
174 174
      {
175 175
      d = Math.PI*mUniforms[NUM_UNIFORMS*effect+1]/180;
176
      mUniforms[NUM_UNIFORMS*effect+4] = (float)Math.sin(d);
176
      mUniforms[NUM_UNIFORMS*effect+1] = (float)Math.sin(d);
177
      mUniforms[NUM_UNIFORMS*effect+4] = (float)Math.cos(d);
178
      d = Math.PI*mUniforms[NUM_UNIFORMS*effect+3]/180;
179
      mUniforms[NUM_UNIFORMS*effect+3] = (float)Math.sin(d);
177 180
      mUniforms[NUM_UNIFORMS*effect+5] = (float)Math.cos(d);
178 181
      }
179 182
    }
180
  
183

  
181 184
///////////////////////////////////////////////////////////////////////////////////////////////////
182
// distort, wave
185
// wave
183 186

  
184
  synchronized long add(EffectNames eln, Data3D data, Data2D center, Data4D region)
187
  synchronized long add(EffectNames eln, Data4D data, Data2D center, Data4D region)
185 188
    {
186 189
    if( mMax[INDEX]>mNumEffects )
187 190
      {
188
      EffectNames.fillWithUnities(eln.ordinal(), mUniforms, NUM_UNIFORMS*mNumEffects);    
191
      EffectNames.fillWithUnities(eln.ordinal(), mUniforms, NUM_UNIFORMS*mNumEffects);
189 192

  
190
      if( data instanceof Dynamic3D)
191
        mInter[0][mNumEffects] = (Dynamic3D)data;
192
      else if( data instanceof Static3D)
193
      if( data instanceof Dynamic4D)
194
        mInter[0][mNumEffects] = (Dynamic4D)data;
195
      else if( data instanceof Static4D)
193 196
        {
194 197
        mInter[0][mNumEffects] = null;
195
        mUniforms[NUM_UNIFORMS*mNumEffects  ] = ((Static3D)data).getX();
196
        mUniforms[NUM_UNIFORMS*mNumEffects+1] = ((Static3D)data).getY();
197
        mUniforms[NUM_UNIFORMS*mNumEffects+2] = ((Static3D)data).getZ();
198
        mUniforms[NUM_UNIFORMS*mNumEffects  ] = ((Static4D)data).getX();
199
        mUniforms[NUM_UNIFORMS*mNumEffects+1] = ((Static4D)data).getY();
200
        mUniforms[NUM_UNIFORMS*mNumEffects+2] = ((Static4D)data).getZ();
201
        mUniforms[NUM_UNIFORMS*mNumEffects+3] = ((Static4D)data).getW();
198 202
        }
199 203

  
200 204
      return addPriv(eln,center,region);
201 205
      }
202
      
206

  
203 207
    return -1;
204 208
    }
205
   
209

  
206 210
///////////////////////////////////////////////////////////////////////////////////////////////////
207
// deform, distort, wave
211
// deform,distort
208 212

  
209
  synchronized long add(EffectNames eln, Data3D data, Data2D center)
213
  synchronized long add(EffectNames eln, Data3D data, Data2D center, Data4D region)
210 214
    {
211 215
    if( mMax[INDEX]>mNumEffects )
212 216
      {
......
222 226
        mUniforms[NUM_UNIFORMS*mNumEffects+2] = ((Static3D)data).getZ();
223 227
        }
224 228

  
225
      return addPriv(eln,center,null);
229
      return addPriv(eln,center,region);
226 230
      }
227 231
      
228 232
    return -1;
229 233
    }
230
 
234

  
231 235
///////////////////////////////////////////////////////////////////////////////////////////////////
232 236
// sink, swirl
233 237

  

Also available in: Unified diff