commit 30949736f204cf5d1577f4d34d7679a66588e546
Author: leszek <leszek@koltunski.pl>
Date:   Fri Jun 23 22:14:17 2017 +0100

    Postprocessing: take quality only from the first child in a bucket.

diff --git a/src/main/java/org/distorted/library/main/DistortedOutputSurface.java b/src/main/java/org/distorted/library/main/DistortedOutputSurface.java
index 348d87f..1c32ad9 100644
--- a/src/main/java/org/distorted/library/main/DistortedOutputSurface.java
+++ b/src/main/java/org/distorted/library/main/DistortedOutputSurface.java
@@ -248,11 +248,10 @@ private String sLast="", sCurr="";
 
   int renderChildren(long time, int numChildren, ArrayList<DistortedNode> children)
     {
-    int numRenders = 0, bucketChange = 0;
+    int quality=0, numRenders = 0, bucketChange = 0;
     DistortedNode child1, child2;
     DistortedEffects lastEffects=null, currEffects;
     long lastBucket=0, currBucket;
-    int lastQuality=0, currQuality;
 
 sCurr = "";
 
@@ -261,7 +260,6 @@ sCurr = "";
       child1 = children.get(i);
       currEffects = child1.getEffects();
       currBucket  = currEffects==null ? 0 : currEffects.getBucket();
-      currQuality = currEffects==null ? 0 : currEffects.getQuality();
 
 sCurr += (" "+currBucket);
 
@@ -272,37 +270,37 @@ sCurr += (" "+currBucket);
 
         if( lastBucket!=currBucket )
           {
+          quality = currEffects==null ? 0 : currEffects.getQuality();
+          bucketChange = i;
+
           if( lastBucket!=0 )
             {
             for(int j=bucketChange; j<i; j++)
               {
               child2 = children.get(j);
-              numRenders += child2.markStencilAndDepth(time,mBuffer[lastQuality],lastEffects);
+              numRenders += child2.markStencilAndDepth(time,mBuffer[quality],lastEffects);
               }
 
             numRenders += lastEffects.postprocess(time, this);
-            numRenders += blitWithDepth(time, mBuffer[lastQuality]);
+            numRenders += blitWithDepth(time, mBuffer[quality]);
             }
-
-          bucketChange = i;
           }
 
-        numRenders += child1.draw(time,mBuffer[currQuality]);
+        numRenders += child1.draw(time,mBuffer[quality]);
 
         if( i==numChildren-1 )
           {
           for(int j=bucketChange; j<numChildren; j++)
             {
             child2 = children.get(j);
-            numRenders += child2.markStencilAndDepth(time,mBuffer[currQuality],currEffects);
+            numRenders += child2.markStencilAndDepth(time,mBuffer[quality],currEffects);
             }
 
           numRenders += currEffects.postprocess(time,this);
-          numRenders += blitWithDepth(time,mBuffer[currQuality]);
+          numRenders += blitWithDepth(time,mBuffer[quality]);
           }
         }
 
-      lastQuality = currQuality;
       lastEffects = currEffects;
       lastBucket  = currBucket;
       }
