anchor.diff:    vec2 depthMinMax = texelFetch(depth_peels, coords, 0).rg;
     vec3 pos_front = screenToVol(vec3(gl_FragCoord.xy,depthMinMax.r));
     vec3 pos_back = screenToVol(vec3(gl_FragCoord.xy,-depthMinMax.g));
  -  return vec4(pos_front, distance(pos_front, pos_back));
  -}
  +  pos_back = depthMinMax.r >= 1.0 ? pos_front : pos_back; 
  +  return vec4(pos_front, length(pos_front- pos_back));
  +}
positive.code:       sample_pos = (sample_pos - sampleStep) - sampleStep * (prev_density / (density - prev_density));
  
        submitFragment(sample_pos);
        return;
      }
  
      prev_density = density;
      sample_pos += sampleStep;
      inside = isInside(sample_pos); 
    }
    // no surface found 
    discard;
  
negative.code: #define GRAD_NORMALS
  
  vec3 get_gradient(const vec3 pos);
  float sample(const vec3 pos);
  vec4 blendColors(const in vec3 sample_pos);
  vec3 blendNormals(const in vec3 sample_pos);
  