commit 735a8757d31d7939cf6c6551ee3bee26348ab2a8
Author: Leszek Koltunski <leszek@distoretedandroid.org>
Date:   Mon Jun 19 16:51:56 2017 +0100

    Simplification in EffectQueueMatrix.

diff --git a/src/main/java/org/distorted/library/main/EffectQueueMatrix.java b/src/main/java/org/distorted/library/main/EffectQueueMatrix.java
index d6caa07..550b2bd 100644
--- a/src/main/java/org/distorted/library/main/EffectQueueMatrix.java
+++ b/src/main/java/org/distorted/library/main/EffectQueueMatrix.java
@@ -146,23 +146,6 @@ class EffectQueueMatrix extends EffectQueue
     Matrix.scaleM(mViewMatrix, 0, scale, scale, scale);
     }
 
-///////////////////////////////////////////////////////////////////////////////////////////////////
-// here construct the ModelView and the ModelViewProjection Matrices
-
-  private void constructMatrices(DistortedOutputSurface projection, float halfX, float halfY, float halfZ, float marginInPixels)
-    {
-    Matrix.setIdentityM(mViewMatrix, 0);
-    Matrix.translateM(mViewMatrix, 0, -projection.mWidth/2, projection.mHeight/2, -projection.mDistance);
-    float mipmap = projection.mMipmap;
-    if( mipmap!=1 ) Matrix.scaleM(mViewMatrix, 0, mipmap, mipmap, mipmap);
-
-    for(int i=0; i<mNumEffects; i++) ((MatrixEffect)mEffects[i]).apply(mViewMatrix,mUniforms,i);
-
-    Matrix.translateM(mViewMatrix, 0, halfX,-halfY,-halfZ);
-    if( marginInPixels!=0 ) magnify(projection,halfX,halfY,halfZ, marginInPixels);
-    Matrix.multiplyMM(mMVPMatrix, 0, projection.mProjectionMatrix, 0, mViewMatrix, 0);
-    }
-
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
   static void getUniforms(int mProgramH)
@@ -174,7 +157,7 @@ class EffectQueueMatrix extends EffectQueue
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  synchronized void compute(long currTime) 
+  void compute(long currTime)
     {
     if( currTime==mTime ) return;
     if( mTime==0 ) mTime = currTime;
@@ -209,9 +192,18 @@ class EffectQueueMatrix extends EffectQueue
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-  synchronized void send(DistortedOutputSurface projection, float halfX, float halfY, float halfZ, float marginInPixels)
+  void send(DistortedOutputSurface projection, float halfX, float halfY, float halfZ, float marginInPixels)
     {
-    constructMatrices(projection,halfX,halfY,halfZ, marginInPixels);
+    Matrix.setIdentityM(mViewMatrix, 0);
+    Matrix.translateM(mViewMatrix, 0, -projection.mWidth/2, projection.mHeight/2, -projection.mDistance);
+    float mipmap = projection.mMipmap;
+    if( mipmap!=1 ) Matrix.scaleM(mViewMatrix, 0, mipmap, mipmap, mipmap);
+
+    for(int i=0; i<mNumEffects; i++) ((MatrixEffect)mEffects[i]).apply(mViewMatrix,mUniforms,i);
+
+    Matrix.translateM(mViewMatrix, 0, halfX,-halfY,-halfZ);
+    if( marginInPixels!=0 ) magnify(projection,halfX,halfY,halfZ, marginInPixels);
+    Matrix.multiplyMM(mMVPMatrix, 0, projection.mProjectionMatrix, 0, mViewMatrix, 0);
 
     GLES30.glUniform3f( mObjDH , halfX, halfY, halfZ);
     GLES30.glUniformMatrix4fv(mMVMatrixH , 1, false, mViewMatrix, 0);
