]> git.sesse.net Git - narabu/blobdiff - tally.shader
Fix some off-by-ones in the tally shader.
[narabu] / tally.shader
index 0d6d09ec70bd7d562313fabe98bdf6008d5ab366..fba526b96b6c29be33db626098a63a50b9ddab22 100644 (file)
@@ -145,6 +145,8 @@ void main()
        memoryBarrierShared();
        barrier();
 
+       new_val = new_dist[i];
+
        for (uint layer = 2; layer <= 256; layer *= 2) {
                if ((i & (layer - 1)) == layer - 1) {
                        new_dist[i] += new_dist[i - (layer / 2)];
@@ -159,5 +161,5 @@ void main()
                memoryBarrierShared();
                barrier();
        }
-       ransdist[base + i] = uvec2(new_val, new_dist[i]);
+       ransdist[base + i] = uvec2(new_dist[i] - new_val, new_val);
 }