commit 75cc1461d23db9edced7c0ede80f6c0d262d5edb
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Fri May 8 02:14:59 2020 +0100

    Improve Generic.

diff --git a/src/main/java/org/distorted/examples/generic/GenericRenderer.java b/src/main/java/org/distorted/examples/generic/GenericRenderer.java
index bbb14e1..c1acc9a 100644
--- a/src/main/java/org/distorted/examples/generic/GenericRenderer.java
+++ b/src/main/java/org/distorted/examples/generic/GenericRenderer.java
@@ -57,7 +57,6 @@ class GenericRenderer implements GLSurfaceView.Renderer
     private DistortedTexture mObjectTexture, mBackgroundTexture, mCenterTexture, mRegionTexture;
     private DistortedEffects mObjectEffects;
     private DistortedScreen mScreen;
-    private MeshQuad mRegionQuad, mCenterQuad, mBackgroundQuad;
     private DistortedNode mCenterNode, mRegionNode;
     private float mObjWidth, mObjHeight, mObjDepth;
     private Static3D mCenterPoint, mRegionPoint, mScaleRegion;
@@ -98,9 +97,7 @@ class GenericRenderer implements GLSurfaceView.Renderer
       DistortedEffects regionEffects     = new DistortedEffects();
 
       MeshBase mesh   = act.getMesh();
-      mRegionQuad     = new MeshQuad();
-      mCenterQuad     = new MeshQuad();
-      mBackgroundQuad = new MeshQuad();
+      MeshQuad quad   = new MeshQuad();
 
       mFactor = mesh instanceof MeshSphere ? 1.0f : 0.7f;
 
@@ -115,12 +112,12 @@ class GenericRenderer implements GLSurfaceView.Renderer
       mRegionPoint= new Static3D(0,0,0);
       mScaleRegion = new Static3D(0,0,0);
 
-      mCenterNode = new DistortedNode(mCenterTexture, centerEffects, mCenterQuad);
-      mRegionNode = new DistortedNode(mRegionTexture, regionEffects, mRegionQuad);
+      mCenterNode = new DistortedNode(mCenterTexture, centerEffects, quad);
+      mRegionNode = new DistortedNode(mRegionTexture, regionEffects, quad);
 
       mScreen = new DistortedScreen();
       mScreen.setProjection(FOV, NEAR);
-      mScreen.attach(mBackgroundTexture, backgroundEffects, mBackgroundQuad );
+      mScreen.attach(mBackgroundTexture, backgroundEffects, quad );
       mScreen.attach(mObjectTexture    , mObjectEffects   , mesh );
 
       Static3D rotateCen = new Static3D(0,0,0);
@@ -221,7 +218,7 @@ class GenericRenderer implements GLSurfaceView.Renderer
 
     void setRegion(float x, float y, float z, float r)
       {
-      float factorReg = 2*mFactorObj*r/mRegionQuad.getStretchX();
+      float factorReg = 2*mFactorObj*r;
       mRegionPoint.set(mFactorObj*x,mFactorObj*y, mFactorObj*z);
       mScaleRegion.set(factorReg,factorReg,factorReg);
       }
@@ -245,20 +242,19 @@ class GenericRenderer implements GLSurfaceView.Renderer
     public void onSurfaceChanged(GL10 glUnused, int width, int height)
       {
       mWidth = width;
-      mScreenMin = width<height ? width:height;
+      mScreenMin = Math.min(width, height);
 
       float factorCen;
-      float centerSize = mCenterQuad.getStretchX();
 
       if( width*mObjHeight > height*mObjWidth ) // screen is more 'horizontal' than the Object
         {
         mFactorObj = (mFactor*height)/mObjHeight;
-        factorCen  = (0.08f  *height)/centerSize;
+        factorCen  = (0.08f  *height);
         }
       else
         {
         mFactorObj = (mFactor*width)/mObjWidth;
-        factorCen  = (0.08f  *width)/centerSize;
+        factorCen  = (0.08f  *width);
         }
 
       setCenter(0,0,0);
@@ -268,13 +264,9 @@ class GenericRenderer implements GLSurfaceView.Renderer
       mScaleObject.set(mFactorObj,mFactorObj,mFactorObj);
       mScaleCenter.set(factorCen,factorCen,factorCen);
 
-      float backgroundSize = mBackgroundQuad.getStretchX();
-      float factorBackX = ((float)width)/backgroundSize;
-      float factorBackY = ((float)height)/backgroundSize;
-
       // quite tricky: move the background exactly to the FAR plane! (see InternalOutputSurface.setProjection() )
       mMoveBackground.set( 0,0, -0.9f*height*(1.0f-NEAR)/(2.0f*(float)Math.tan(FOV*Math.PI/360)) );
-      mScaleBackground.set( 2*factorBackX, 2*factorBackY, 1.0f );
+      mScaleBackground.set( 2*width, 2*height, 1.0f );
 
       mScreen.resize(width, height);
       }
@@ -305,7 +297,7 @@ class GenericRenderer implements GLSurfaceView.Renderer
           isC.close();
           isR.close();
           }
-        catch(IOException e) { }
+        catch(IOException ignored) { }
         }  
       
       mObjectTexture.setTexture( act.getBitmap() );
