commit e50f49b666df1062c713efc2ae56d9c32f412e64
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Sat Feb 29 23:59:37 2020 +0000

    All apps converted to the new V&F center schema!

diff --git a/src/main/java/org/distorted/examples/aroundtheworld/AroundTheWorldEffectsManager.java b/src/main/java/org/distorted/examples/aroundtheworld/AroundTheWorldEffectsManager.java
index beb29ab..f0658b2 100644
--- a/src/main/java/org/distorted/examples/aroundtheworld/AroundTheWorldEffectsManager.java
+++ b/src/main/java/org/distorted/examples/aroundtheworld/AroundTheWorldEffectsManager.java
@@ -149,7 +149,7 @@ class AroundTheWorldEffectsManager
     // WHITENESS
     // Vertex Effects
     wLipsRegion = new Static4D(0,0,0,100);
-    wLipsCenter = new Static3D(300,100,0);
+    wLipsCenter = new Static3D(3,-200,0);
     wLipsFactor = new Static1D(0.7f);
     wLipsDyn    = new Dynamic1D();
     wLipsDyn.add(wLipsFactor);
@@ -157,26 +157,26 @@ class AroundTheWorldEffectsManager
     // ASIANNESS
     // Vertex Effects
     aLipsNoseRegion    = new Static4D(0,0,0,267);
-    aLipsNoseCenter    = new Static3D(300, 40,0);
+    aLipsNoseCenter    = new Static3D(3,260,0);
     aLipsNoseDyn       = new Dynamic3D();
     aLipsNoseFactor    = new Static3D(0,0,0);
     aLipsNoseDyn.add(aLipsNoseFactor);
 
     aNoseBroaderRegion = new Static4D(0,0,0,130);
-    aNoseBroaderCenter = new Static3D(300,293,0);
+    aNoseBroaderCenter = new Static3D(3,-7,0);
     aNoseBroaderDyn    = new Dynamic3D();
     aNoseBroaderFactor = new Static3D(0,0,90);
     aNoseBroaderDyn.add(aNoseBroaderFactor);
 
     aNostrilsRegion    = new Static4D(0,0,0,60);
-    aNostrilsCenter    = new Static3D(300,264,0);
+    aNostrilsCenter    = new Static3D(3,-36,0);
     aNostrilsDyn       = new Dynamic3D();
     aNostrilsFactor    = new Static3D(0,0,0);
     aNostrilsDyn.add(aNostrilsFactor);
 
     aEyesRegion        = new Static4D(0,0,0,83);
-    aLEyeCenter        = new Static3D(176,370,0);
-    aREyeCenter        = new Static3D(420,370,0);
+    aLEyeCenter        = new Static3D(-121,70,0);
+    aREyeCenter        = new Static3D( 123,70,0);
     aLEyeDyn           = new Dynamic1D();
     aREyeDyn           = new Dynamic1D();
     aLEyeFactor        = new Static1D(0);
@@ -185,17 +185,17 @@ class AroundTheWorldEffectsManager
     aREyeDyn.add(aREyeFactor);
 
     aEyebrowsRegion    = new Static4D(0,0,0,142);
-    aEyebrowsCenter    = new Static3D(300,500,0);
+    aEyebrowsCenter    = new Static3D(3,200,0);
     aEyebrowsDyn       = new Dynamic3D();
     aEyebrowsFactor    = new Static3D(0,0,0);
     aEyebrowsDyn.add(aEyebrowsFactor);
 
     // Fragment Effects
-    aSkinColorCenter   = new Static3D(300,300,0);
+    aSkinColorCenter   = new Static3D(3,0,0);
     aSkinColorRegion   = new Static3D(600,600,600);
-    aLEyeColorCenter   = new Static3D(172,370,0);
+    aLEyeColorCenter   = new Static3D(-125,70,0);
     aLEyeColorRegion   = new Static3D(29,25,25);
-    aREyeColorCenter   = new Static3D(423,370,0);
+    aREyeColorCenter   = new Static3D(126,70,0);
     aREyeColorRegion   = new Static3D(29,25,25);
 
     aChromaSkin        = new Static3D(0.5f, 0.5f, 0.5f);
@@ -211,45 +211,47 @@ class AroundTheWorldEffectsManager
     // BLACKNESS
     // Vertex Effects
     bFaceRegion        = new Static4D(0,0,0,600);
-    bFaceCenter        = new Static3D(300,300,0);
+    bFaceCenter        = new Static3D(3,0,0);
     bFaceFactor        = new Static3D(1.0f,0.0f,90.0f);
     bFaceDyn           = new Dynamic3D();
     bFaceDyn.add(bFaceFactor);
 
     bTipLowerRegion    = new Static4D(0,0,0,41);
-    bTipLowerCenter    = new Static3D(300,207,0);
+    bTipLowerCenter    = new Static3D(3,-93,0);
     bTipLowerFactor    = new Static3D(0,0,0);
     bTipLowerDyn       = new Dynamic3D();
     bTipLowerDyn.add(bTipLowerFactor);
 
     bWholeNoseRegion   = new Static4D(0,0,0,130);
-    bWholeNoseCenter   = new Static3D(300,243,0);
+    bWholeNoseCenter   = new Static3D(3,-57,0);
     bWholeNoseFactor   = new Static3D(1.0f,0.0f,90.0f);
     bWholeNoseDyn      = new Dynamic3D();
     bWholeNoseDyn.add(bWholeNoseFactor);
 
     bNoseBroaderRegion = new Static4D(0,0,0,95);
-    bNoseBroaderCenter = new Static3D(300,192,0);
+    bNoseBroaderCenter = new Static3D(3,-108,0);
     bNoseBroaderFactor = new Static3D(1.0f,0.0f,90.0f);
     bNoseBroaderDyn    = new Dynamic3D();
     bNoseBroaderDyn.add(bNoseBroaderFactor);
 
     bLipsRegion        = new Static4D(0,-96,0,118);
-    bLipsCenter        = new Static3D(300,142,0);
+    bLipsCenter        = new Static3D(3,-158,0);
     bLipsFactor        = new Static3D(1.0f,90.0f,0.0f);
     bLipsDyn           = new Dynamic3D();
     bLipsDyn.add(bLipsFactor);
 
+// 594 x 600
+
     // Fragment Effects
-    bSkinColorCenter     = new Static3D(300,300,0);
+    bSkinColorCenter     = new Static3D(3,0,0);
     bSkinColorRegion     = new Static3D(600,600,600);
-    bLEyeColorCenter     = new Static3D(158,359,0);
+    bLEyeColorCenter     = new Static3D(-139,59,0);
     bLEyeColorRegion     = new Static3D(55,24,50);
-    bREyeColorCenter     = new Static3D(436,359,0);
+    bREyeColorCenter     = new Static3D(139,59,0);
     bREyeColorRegion     = new Static3D(55,24,50);
-    bLPupilColorCenter   = new Static3D(166,370,0);
+    bLPupilColorCenter   = new Static3D(-131,70,0);
     bLPupilColorRegion   = new Static3D(28,23,25);
-    bRPupilColorCenter   = new Static3D(431,370,0);
+    bRPupilColorCenter   = new Static3D(134,70,0);
     bRPupilColorRegion   = new Static3D(28,23,25);
 
     bChromaSkin        = new Static3D(0.4f, 0.25f, 0.25f);
@@ -315,8 +317,6 @@ class AroundTheWorldEffectsManager
     mAsianness = asianness;
     mBlackness = blackness;
 
-    //android.util.Log.e("manager", "blackness="+blackness+" asianness="+asianness);
-
     // WHITENESS
     wLipsFactor.set(1.0f-0.3f*mWhiteness);
 
diff --git a/src/main/java/org/distorted/examples/earth/EarthRenderer.java b/src/main/java/org/distorted/examples/earth/EarthRenderer.java
index 40f5275..913849f 100644
--- a/src/main/java/org/distorted/examples/earth/EarthRenderer.java
+++ b/src/main/java/org/distorted/examples/earth/EarthRenderer.java
@@ -203,7 +203,7 @@ class EarthRenderer implements GLSurfaceView.Renderer
       float y = (float)        sinLAT /2.0f;
       float z = (float)(cosLON*cosLAT)/2.0f;
 
-      Static3D center = new Static3D( (0.5f+x)*mObjWidth, (0.5f+y)*mObjHeight, (0.5f+z)*mObjDepth);
+      Static3D center = new Static3D( (x)*mObjWidth, (y)*mObjHeight, (z)*mObjDepth);
 
       switch(name)
         {
diff --git a/src/main/java/org/distorted/examples/flag/FlagRenderer.java b/src/main/java/org/distorted/examples/flag/FlagRenderer.java
index b278675..4c92bfc 100644
--- a/src/main/java/org/distorted/examples/flag/FlagRenderer.java
+++ b/src/main/java/org/distorted/examples/flag/FlagRenderer.java
@@ -92,7 +92,7 @@ class FlagRenderer implements GLSurfaceView.Renderer
       mQuat1 = new Static4D(           0,         0,           0,          1);  // unity quaternion
       mQuat2 = new Static4D(-0.25189602f,0.3546389f,0.009657208f,0.90038127f);  // something semi-random that looks good
 
-      Static3D waveCenter = new Static3D(mObjWidth, mObjHeight/2, mObjDepth/2);  // middle of the right edge
+      Static3D waveCenter = new Static3D(mObjWidth/2, 0, 0);  // middle of the right edge
       Static4D waveRegion = new Static4D(0,0,0,mObjWidth);
 
       DistortedEffects effects = new DistortedEffects();
diff --git a/src/main/java/org/distorted/examples/wind/WindEffectsManager.java b/src/main/java/org/distorted/examples/wind/WindEffectsManager.java
index 3193e7f..7e31e13 100644
--- a/src/main/java/org/distorted/examples/wind/WindEffectsManager.java
+++ b/src/main/java/org/distorted/examples/wind/WindEffectsManager.java
@@ -104,15 +104,15 @@ class WindEffectsManager
 
   void apply(DistortedEffects effects)
     {
-    Static3D midLeftMatrix= new Static3D(-mWidth/2,0,0);          // matrix effects center is in the middle
-    Static3D midRight     = new Static3D(mWidth,mHeight/2,0);     //
-    Static3D tadRight     = new Static3D(3*mWidth/4,mHeight/2,0); // vertex & fragment - in the lower-left
-    Static4D windRegion   = new Static4D(0,0,0,mHeight);          //
+    Static3D midLeft   = new Static3D(-mWidth/2,0,0);
+    Static3D midRight  = new Static3D( mWidth/2,0,0);
+    Static3D tadRight  = new Static3D( mWidth/4,0,0);
+    Static4D windRegion= new Static4D(0,0,0,mHeight);
 
     setWind(0);
 
     effects.apply( new MatrixEffectScale(scaleFactor) );
-    effects.apply( new MatrixEffectShear(shearFactor,midLeftMatrix) );
+    effects.apply( new MatrixEffectShear(shearFactor,midLeft) );
 
     effects.apply( new VertexEffectDeform(deformForce,midRight) );
     effects.apply( new VertexEffectWave(windDynamic1, midRight, windRegion) );
