commit 855ba24e125a94f905e810241b379c3099ee0bff
Author: leszek <leszek@koltunski.pl>
Date:   Wed Mar 15 22:56:09 2017 +0000

    New 'glClearColor' and 'glClearDepthf' APIs in OutputSurface. This fixes the 'transparency' regressions from last commit.

diff --git a/src/main/java/org/distorted/examples/aroundtheworld/AroundTheWorldRenderer.java b/src/main/java/org/distorted/examples/aroundtheworld/AroundTheWorldRenderer.java
index bd1418c..e67fbd9 100644
--- a/src/main/java/org/distorted/examples/aroundtheworld/AroundTheWorldRenderer.java
+++ b/src/main/java/org/distorted/examples/aroundtheworld/AroundTheWorldRenderer.java
@@ -62,6 +62,7 @@ class AroundTheWorldRenderer implements GLSurfaceView.Renderer
       mEffects = new DistortedEffects();
       mManager.apply(mEffects);
       mScreen = new DistortedScreen();
+      mScreen.glClearColor(0.5f, 0.5f, 0.5f, 1.0f);
       }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -75,7 +76,6 @@ class AroundTheWorldRenderer implements GLSurfaceView.Renderer
 
    public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -107,8 +107,6 @@ class AroundTheWorldRenderer implements GLSurfaceView.Renderer
     
    public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(0.5f, 0.5f, 0.5f, 1.0f);
-
       InputStream is = mView.getContext().getResources().openRawResource(R.raw.face);
       Bitmap bitmap;
 
diff --git a/src/main/java/org/distorted/examples/bean/BeanRenderer.java b/src/main/java/org/distorted/examples/bean/BeanRenderer.java
index b6c583c..152b04b 100644
--- a/src/main/java/org/distorted/examples/bean/BeanRenderer.java
+++ b/src/main/java/org/distorted/examples/bean/BeanRenderer.java
@@ -95,7 +95,6 @@ class BeanRenderer implements GLSurfaceView.Renderer
    
     public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -129,8 +128,6 @@ class BeanRenderer implements GLSurfaceView.Renderer
     
     public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       InputStream is = mView.getContext().getResources().openRawResource(R.raw.bean);
       Bitmap bitmap;
         
diff --git a/src/main/java/org/distorted/examples/blur/BlurRenderer.java b/src/main/java/org/distorted/examples/blur/BlurRenderer.java
index faa0459..c34a8af 100644
--- a/src/main/java/org/distorted/examples/blur/BlurRenderer.java
+++ b/src/main/java/org/distorted/examples/blur/BlurRenderer.java
@@ -82,7 +82,6 @@ class BlurRenderer implements GLSurfaceView.Renderer
    
    public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -116,8 +115,6 @@ class BlurRenderer implements GLSurfaceView.Renderer
     
     public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       InputStream is = mView.getContext().getResources().openRawResource(R.raw.dog);
       Bitmap bitmap;
         
diff --git a/src/main/java/org/distorted/examples/catanddog/CatAndDogRenderer.java b/src/main/java/org/distorted/examples/catanddog/CatAndDogRenderer.java
index 9609ee2..31ff3a6 100644
--- a/src/main/java/org/distorted/examples/catanddog/CatAndDogRenderer.java
+++ b/src/main/java/org/distorted/examples/catanddog/CatAndDogRenderer.java
@@ -85,7 +85,6 @@ class CatAndDogRenderer implements GLSurfaceView.Renderer
    
     public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -93,8 +92,6 @@ class CatAndDogRenderer implements GLSurfaceView.Renderer
     
     public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       InputStream is = mView.getContext().getResources().openRawResource(R.raw.cat_and_dog);
       Bitmap bitmap;
         
diff --git a/src/main/java/org/distorted/examples/check/CheckRenderer.java b/src/main/java/org/distorted/examples/check/CheckRenderer.java
index 6292d39..6362e85 100644
--- a/src/main/java/org/distorted/examples/check/CheckRenderer.java
+++ b/src/main/java/org/distorted/examples/check/CheckRenderer.java
@@ -80,7 +80,6 @@ class CheckRenderer implements GLSurfaceView.Renderer
    
     public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -114,8 +113,6 @@ class CheckRenderer implements GLSurfaceView.Renderer
     
     public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {  
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       InputStream is = mView.getContext().getResources().openRawResource(R.raw.success);
       Bitmap bitmap;
 
diff --git a/src/main/java/org/distorted/examples/cubes/CubesRenderer.java b/src/main/java/org/distorted/examples/cubes/CubesRenderer.java
index 040ef0e..49a52b2 100644
--- a/src/main/java/org/distorted/examples/cubes/CubesRenderer.java
+++ b/src/main/java/org/distorted/examples/cubes/CubesRenderer.java
@@ -88,7 +88,6 @@ class CubesRenderer implements GLSurfaceView.Renderer
    
     public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -124,8 +123,6 @@ class CubesRenderer implements GLSurfaceView.Renderer
     
     public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       InputStream is = mView.getContext().getResources().openRawResource(R.raw.grid);
       Bitmap bitmap;
         
diff --git a/src/main/java/org/distorted/examples/deform/DeformRenderer.java b/src/main/java/org/distorted/examples/deform/DeformRenderer.java
index e71df26..8cf31ae 100644
--- a/src/main/java/org/distorted/examples/deform/DeformRenderer.java
+++ b/src/main/java/org/distorted/examples/deform/DeformRenderer.java
@@ -180,8 +180,6 @@ class DeformRenderer implements GLSurfaceView.Renderer
    
    public void onDrawFrame(GL10 glUnused)
      {
-     GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
-
      mPaint.setColor(0xffffffff);
      fpsCanvas.drawRect(0, 0, fpsW, fpsH, mPaint);
      mPaint.setColor(0xff000000);
@@ -230,8 +228,6 @@ class DeformRenderer implements GLSurfaceView.Renderer
     
    public void onSurfaceCreated(GL10 glUnused, EGLConfig config)
      {
-     GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
      DistortedEffects.enableEffect(EffectNames.DISTORT);
      DistortedEffects.enableEffect(EffectNames.DEFORM);
 
diff --git a/src/main/java/org/distorted/examples/differentbitmaps/DifferentBitmapsRenderer.java b/src/main/java/org/distorted/examples/differentbitmaps/DifferentBitmapsRenderer.java
index 3194fa3..4793584 100644
--- a/src/main/java/org/distorted/examples/differentbitmaps/DifferentBitmapsRenderer.java
+++ b/src/main/java/org/distorted/examples/differentbitmaps/DifferentBitmapsRenderer.java
@@ -77,6 +77,7 @@ class DifferentBitmapsRenderer implements GLSurfaceView.Renderer
       mEffects[0].distort(dDistort,mPoint);                                 // keep moving the whole bitmap left and right.
 
       mScreen = new DistortedScreen();
+      mScreen.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
       }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -106,7 +107,6 @@ class DifferentBitmapsRenderer implements GLSurfaceView.Renderer
    
     public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -150,8 +150,6 @@ class DifferentBitmapsRenderer implements GLSurfaceView.Renderer
     
     public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
-
       Bitmap bitmap0= readBitmap(R.raw.dog);
       Bitmap bitmap1= readBitmap(R.raw.face);
       Bitmap bitmap2= readBitmap(R.raw.cat);
diff --git a/src/main/java/org/distorted/examples/differenteffects/DifferentEffectsRenderer.java b/src/main/java/org/distorted/examples/differenteffects/DifferentEffectsRenderer.java
index d9af581..34b0896 100644
--- a/src/main/java/org/distorted/examples/differenteffects/DifferentEffectsRenderer.java
+++ b/src/main/java/org/distorted/examples/differenteffects/DifferentEffectsRenderer.java
@@ -100,7 +100,6 @@ class DifferentEffectsRenderer implements GLSurfaceView.Renderer
    
    public void onDrawFrame(GL10 glUnused)
      {
-     GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
      mScreen.render( System.currentTimeMillis() );
      }
 
@@ -144,8 +143,6 @@ class DifferentEffectsRenderer implements GLSurfaceView.Renderer
     
    public void onSurfaceCreated(GL10 glUnused, EGLConfig config)
      {
-     GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
      InputStream is = mView.getContext().getResources().openRawResource(R.raw.dog);
      Bitmap bitmap;
         
diff --git a/src/main/java/org/distorted/examples/dynamic/DynamicRenderer.java b/src/main/java/org/distorted/examples/dynamic/DynamicRenderer.java
index 335323e..dbbc40e 100644
--- a/src/main/java/org/distorted/examples/dynamic/DynamicRenderer.java
+++ b/src/main/java/org/distorted/examples/dynamic/DynamicRenderer.java
@@ -101,8 +101,6 @@ class DynamicRenderer implements GLSurfaceView.Renderer
    
    public void onDrawFrame(GL10 glUnused)
      {   
-     GLES30.glClear(GLES30.GL_COLOR_BUFFER_BIT | GLES30.GL_DEPTH_BUFFER_BIT);               
-       
      long time = System.currentTimeMillis();
       
      mCanvas.drawRect(0, 0, texW, texH, mPaint);
diff --git a/src/main/java/org/distorted/examples/effectqueue/EffectQueueRenderer.java b/src/main/java/org/distorted/examples/effectqueue/EffectQueueRenderer.java
index 1ab18dd..afb5164 100644
--- a/src/main/java/org/distorted/examples/effectqueue/EffectQueueRenderer.java
+++ b/src/main/java/org/distorted/examples/effectqueue/EffectQueueRenderer.java
@@ -138,7 +138,6 @@ class EffectQueueRenderer implements GLSurfaceView.Renderer, EffectListener
    
   public void onDrawFrame(GL10 glUnused)
     {   
-    GLES30.glClear(GLES30.GL_COLOR_BUFFER_BIT | GLES30.GL_DEPTH_BUFFER_BIT);
     mScreen.render( System.currentTimeMillis() );
     }
 
diff --git a/src/main/java/org/distorted/examples/effects3d/Effects3DRenderer.java b/src/main/java/org/distorted/examples/effects3d/Effects3DRenderer.java
index 688e5ba..cc6bff7 100644
--- a/src/main/java/org/distorted/examples/effects3d/Effects3DRenderer.java
+++ b/src/main/java/org/distorted/examples/effects3d/Effects3DRenderer.java
@@ -166,7 +166,6 @@ class Effects3DRenderer implements GLSurfaceView.Renderer
 
     public void onDrawFrame(GL10 glUnused)
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render(System.currentTimeMillis());
       }
 
@@ -245,8 +244,6 @@ class Effects3DRenderer implements GLSurfaceView.Renderer
 
     public void onSurfaceCreated(GL10 glUnused, EGLConfig config)
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       Effects3DActivity act = (Effects3DActivity)mView.getContext();
 
       InputStream isB = act.getResources().openRawResource(R.raw.water);
diff --git a/src/main/java/org/distorted/examples/fbo/FBORenderer.java b/src/main/java/org/distorted/examples/fbo/FBORenderer.java
index 16defbd..4fffa0c 100644
--- a/src/main/java/org/distorted/examples/fbo/FBORenderer.java
+++ b/src/main/java/org/distorted/examples/fbo/FBORenderer.java
@@ -89,7 +89,6 @@ class FBORenderer implements GLSurfaceView.Renderer
    
    public void onDrawFrame(GL10 glUnused)
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render(System.currentTimeMillis());
       }
 
@@ -123,7 +122,6 @@ class FBORenderer implements GLSurfaceView.Renderer
     
    public void onSurfaceCreated(GL10 glUnused, EGLConfig config)
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
       GLES30.glEnable(GLES30.GL_CULL_FACE);
       GLES30.glCullFace(GLES30.GL_BACK);
       GLES30.glFrontFace(GLES30.GL_CW);
diff --git a/src/main/java/org/distorted/examples/flag/FlagRenderer.java b/src/main/java/org/distorted/examples/flag/FlagRenderer.java
index e28ee37..d378581 100644
--- a/src/main/java/org/distorted/examples/flag/FlagRenderer.java
+++ b/src/main/java/org/distorted/examples/flag/FlagRenderer.java
@@ -142,7 +142,6 @@ class FlagRenderer implements GLSurfaceView.Renderer
 
     public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -178,8 +177,6 @@ class FlagRenderer implements GLSurfaceView.Renderer
     
     public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       InputStream is = mView.getContext().getResources().openRawResource(R.raw.iceland);
       Bitmap bitmap;
         
diff --git a/src/main/java/org/distorted/examples/girl/GirlRenderer.java b/src/main/java/org/distorted/examples/girl/GirlRenderer.java
index b840110..b704b95 100644
--- a/src/main/java/org/distorted/examples/girl/GirlRenderer.java
+++ b/src/main/java/org/distorted/examples/girl/GirlRenderer.java
@@ -152,7 +152,6 @@ class GirlRenderer implements GLSurfaceView.Renderer
    
    public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -186,8 +185,6 @@ class GirlRenderer implements GLSurfaceView.Renderer
     
     public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       InputStream is = mView.getContext().getResources().openRawResource(R.raw.girl);
       Bitmap bitmap;
         
diff --git a/src/main/java/org/distorted/examples/listener/ListenerRenderer.java b/src/main/java/org/distorted/examples/listener/ListenerRenderer.java
index aee1802..eb8c19e 100644
--- a/src/main/java/org/distorted/examples/listener/ListenerRenderer.java
+++ b/src/main/java/org/distorted/examples/listener/ListenerRenderer.java
@@ -103,7 +103,6 @@ class ListenerRenderer implements GLSurfaceView.Renderer,EffectListener
 
     public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -137,8 +136,6 @@ class ListenerRenderer implements GLSurfaceView.Renderer,EffectListener
     
     public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       InputStream is = mView.getContext().getResources().openRawResource(R.raw.water);
       Bitmap bitmap;
         
diff --git a/src/main/java/org/distorted/examples/matrix3d/Matrix3DRenderer.java b/src/main/java/org/distorted/examples/matrix3d/Matrix3DRenderer.java
index 525d468..1ab7dda 100644
--- a/src/main/java/org/distorted/examples/matrix3d/Matrix3DRenderer.java
+++ b/src/main/java/org/distorted/examples/matrix3d/Matrix3DRenderer.java
@@ -55,7 +55,6 @@ class Matrix3DRenderer implements GLSurfaceView.Renderer
 
     public void onDrawFrame(GL10 glUnused)
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -87,8 +86,6 @@ class Matrix3DRenderer implements GLSurfaceView.Renderer
 
     public void onSurfaceCreated(GL10 glUnused, EGLConfig config)
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       Matrix3DActivity act = (Matrix3DActivity)mView.getContext();
 
       mTexture.setTexture(act.getBitmap());
diff --git a/src/main/java/org/distorted/examples/mirror/MirrorRenderer.java b/src/main/java/org/distorted/examples/mirror/MirrorRenderer.java
index a4f85f7..85c1024 100644
--- a/src/main/java/org/distorted/examples/mirror/MirrorRenderer.java
+++ b/src/main/java/org/distorted/examples/mirror/MirrorRenderer.java
@@ -111,8 +111,6 @@ class MirrorRenderer implements GLSurfaceView.Renderer
 
    public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
-
       long time = System.currentTimeMillis();
 
       mOffScreen1.render(time);
@@ -163,8 +161,6 @@ class MirrorRenderer implements GLSurfaceView.Renderer
     
    public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       InputStream isM = mView.getContext().getResources().openRawResource(R.raw.mirror);
       InputStream isH = mView.getContext().getResources().openRawResource(R.raw.messi);
 
diff --git a/src/main/java/org/distorted/examples/monalisa/MonaLisaRenderer.java b/src/main/java/org/distorted/examples/monalisa/MonaLisaRenderer.java
index a7d6090..3696892 100644
--- a/src/main/java/org/distorted/examples/monalisa/MonaLisaRenderer.java
+++ b/src/main/java/org/distorted/examples/monalisa/MonaLisaRenderer.java
@@ -80,7 +80,6 @@ class MonaLisaRenderer implements GLSurfaceView.Renderer
    
     public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -112,8 +111,6 @@ class MonaLisaRenderer implements GLSurfaceView.Renderer
     
     public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       InputStream is = mView.getContext().getResources().openRawResource(R.raw.monalisa);
       Bitmap bitmap;
         
diff --git a/src/main/java/org/distorted/examples/movingeffects/MovingEffectsRenderer.java b/src/main/java/org/distorted/examples/movingeffects/MovingEffectsRenderer.java
index ba325ba..b463aee 100644
--- a/src/main/java/org/distorted/examples/movingeffects/MovingEffectsRenderer.java
+++ b/src/main/java/org/distorted/examples/movingeffects/MovingEffectsRenderer.java
@@ -148,8 +148,6 @@ class MovingEffectsRenderer implements GLSurfaceView.Renderer
    
    public void onDrawFrame(GL10 glUnused)
      {   
-     GLES30.glClear(GLES30.GL_COLOR_BUFFER_BIT | GLES30.GL_DEPTH_BUFFER_BIT);               
-       
      long time = System.currentTimeMillis();
       
      if (mView.getCurrentEffect() == MovingEffectsSurfaceView.EFFECT_POINTS && mRefresh )
diff --git a/src/main/java/org/distorted/examples/multiblur/MultiblurRenderer.java b/src/main/java/org/distorted/examples/multiblur/MultiblurRenderer.java
index 9f46c3e..9ef1482 100644
--- a/src/main/java/org/distorted/examples/multiblur/MultiblurRenderer.java
+++ b/src/main/java/org/distorted/examples/multiblur/MultiblurRenderer.java
@@ -110,7 +110,6 @@ class MultiblurRenderer implements GLSurfaceView.Renderer
    
     public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -146,8 +145,6 @@ class MultiblurRenderer implements GLSurfaceView.Renderer
     
     public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       InputStream is1 = mView.getContext().getResources().openRawResource(R.raw.cat);
       InputStream is2 = mView.getContext().getResources().openRawResource(R.raw.dog);
       Bitmap bitmap1,bitmap2;
diff --git a/src/main/java/org/distorted/examples/olimpic/OlimpicRenderer.java b/src/main/java/org/distorted/examples/olimpic/OlimpicRenderer.java
index 2820a2a..68fb077 100644
--- a/src/main/java/org/distorted/examples/olimpic/OlimpicRenderer.java
+++ b/src/main/java/org/distorted/examples/olimpic/OlimpicRenderer.java
@@ -140,7 +140,6 @@ class OlimpicRenderer implements GLSurfaceView.Renderer
    
     public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mCurrRendered = mScreen.render(System.currentTimeMillis());
 
       if( mCurrRendered!=mPrevRendered )
@@ -191,8 +190,6 @@ class OlimpicRenderer implements GLSurfaceView.Renderer
     
     public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       InputStream is = mView.getContext().getResources().openRawResource(R.raw.leaf);
       Bitmap leaf;
       
diff --git a/src/main/java/org/distorted/examples/plainmonalisa/RenderThread.java b/src/main/java/org/distorted/examples/plainmonalisa/RenderThread.java
index f030fb7..ae377f7 100644
--- a/src/main/java/org/distorted/examples/plainmonalisa/RenderThread.java
+++ b/src/main/java/org/distorted/examples/plainmonalisa/RenderThread.java
@@ -189,8 +189,6 @@ class RenderThread extends Thread
     eglSurface = eglCore.createWindowSurface(surface);
     eglCore.makeCurrent(eglSurface);
 
-    GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
     InputStream is = mView.getContext().getResources().openRawResource(R.raw.monalisa);
     Bitmap bmp;
 
@@ -268,10 +266,7 @@ class RenderThread extends Thread
       }
 
     eglCore.makeCurrent(eglSurface);
-
-    GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
-    mScreen.render( System.currentTimeMillis() );
-
+    mScreen.render( frameTimeNs/1000000 );  // 1 nanosecond = 1 millisecond / 10^-6
     eglCore.swapBuffers(eglSurface);
     }
 
diff --git a/src/main/java/org/distorted/examples/projection/ProjectionRenderer.java b/src/main/java/org/distorted/examples/projection/ProjectionRenderer.java
index 331c1df..eaf1289 100644
--- a/src/main/java/org/distorted/examples/projection/ProjectionRenderer.java
+++ b/src/main/java/org/distorted/examples/projection/ProjectionRenderer.java
@@ -79,7 +79,6 @@ class ProjectionRenderer implements GLSurfaceView.Renderer
    
    public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -130,8 +129,6 @@ class ProjectionRenderer implements GLSurfaceView.Renderer
     
    public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       DistortedEffects.enableEffect(EffectNames.DISTORT);
 
       try
diff --git a/src/main/java/org/distorted/examples/quaternion/QuaternionRenderer.java b/src/main/java/org/distorted/examples/quaternion/QuaternionRenderer.java
index 1c13976..e62324f 100644
--- a/src/main/java/org/distorted/examples/quaternion/QuaternionRenderer.java
+++ b/src/main/java/org/distorted/examples/quaternion/QuaternionRenderer.java
@@ -92,7 +92,6 @@ class QuaternionRenderer implements GLSurfaceView.Renderer
    
   public void onDrawFrame(GL10 glUnused) 
     {
-    GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
     mScreen.render( System.currentTimeMillis() );
     }
 
@@ -114,8 +113,6 @@ class QuaternionRenderer implements GLSurfaceView.Renderer
     
   public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
     {
-    GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
     InputStream is = mView.getContext().getResources().openRawResource(R.raw.grid);
     Bitmap bitmap;
         
diff --git a/src/main/java/org/distorted/examples/save/SaveRenderer.java b/src/main/java/org/distorted/examples/save/SaveRenderer.java
index 7c35bf4..a76af14 100644
--- a/src/main/java/org/distorted/examples/save/SaveRenderer.java
+++ b/src/main/java/org/distorted/examples/save/SaveRenderer.java
@@ -149,8 +149,6 @@ class SaveRenderer implements GLSurfaceView.Renderer
    
   public void onDrawFrame(GL10 glUnused)
     {
-    GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
-
     long time = System.currentTimeMillis();
 
     if( isSaving )  // render to an offscreen buffer and read pixels
@@ -224,8 +222,6 @@ class SaveRenderer implements GLSurfaceView.Renderer
     
   public void onSurfaceCreated(GL10 glUnused, EGLConfig config)
     {
-    GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
     InputStream is = mView.getContext().getResources().openRawResource(R.raw.girl);
     Bitmap bitmap;
 
diff --git a/src/main/java/org/distorted/examples/sink/SinkRenderer.java b/src/main/java/org/distorted/examples/sink/SinkRenderer.java
index bdb52ba..d4d5307 100644
--- a/src/main/java/org/distorted/examples/sink/SinkRenderer.java
+++ b/src/main/java/org/distorted/examples/sink/SinkRenderer.java
@@ -72,7 +72,6 @@ class SinkRenderer implements GLSurfaceView.Renderer
    
   public void onDrawFrame(GL10 glUnused) 
     {
-    GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
     mScreen.render( System.currentTimeMillis() );
     }
 
@@ -106,8 +105,6 @@ class SinkRenderer implements GLSurfaceView.Renderer
     
   public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
     {
-    GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
     InputStream is = mView.getContext().getResources().openRawResource(R.raw.cat);
     Bitmap bitmap;
         
diff --git a/src/main/java/org/distorted/examples/starwars/StarWarsRenderer.java b/src/main/java/org/distorted/examples/starwars/StarWarsRenderer.java
index bbbb6f9..2daed00 100644
--- a/src/main/java/org/distorted/examples/starwars/StarWarsRenderer.java
+++ b/src/main/java/org/distorted/examples/starwars/StarWarsRenderer.java
@@ -153,7 +153,6 @@ class StarWarsRenderer implements GLSurfaceView.Renderer, EffectListener
    
   public void onDrawFrame(GL10 glUnused) 
     {
-    GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
     mScreen.render(System.currentTimeMillis());
     }
 
@@ -183,8 +182,6 @@ class StarWarsRenderer implements GLSurfaceView.Renderer, EffectListener
     
   public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
     {
-    GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
     setupBitmaps();
 
     DistortedEffects.enableEffect(EffectNames.SMOOTH_ALPHA);
diff --git a/src/main/java/org/distorted/examples/wind/WindRenderer.java b/src/main/java/org/distorted/examples/wind/WindRenderer.java
index b1321e8..e9881f4 100644
--- a/src/main/java/org/distorted/examples/wind/WindRenderer.java
+++ b/src/main/java/org/distorted/examples/wind/WindRenderer.java
@@ -81,7 +81,6 @@ class WindRenderer implements GLSurfaceView.Renderer
    
    public void onDrawFrame(GL10 glUnused) 
       {
-      GLES30.glClear( GLES30.GL_DEPTH_BUFFER_BIT | GLES30.GL_COLOR_BUFFER_BIT);
       mScreen.render( System.currentTimeMillis() );
       }
 
@@ -109,8 +108,6 @@ class WindRenderer implements GLSurfaceView.Renderer
     
    public void onSurfaceCreated(GL10 glUnused, EGLConfig config) 
       {
-      GLES30.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
-
       InputStream is = mView.getContext().getResources().openRawResource(R.raw.iceland);
       Bitmap bitmap;
 
