char volume_accumulateSamples_mip_frag[] = "#version 110\n"
                                           "\n"
                                           "uniform sampler3D volumeTexture;\n"
                                           "uniform float TransparencyValue;\n"
                                           "uniform float AlphaFuncValue;\n"
                                           "\n"
                                           "vec4 accumulateSamples(vec4 fragColor, vec3 ts, vec3 te, vec3 dt, float scale, float cutoff, int num_iterations)\n"
                                           "{\n"
                                           "    vec3 texcoord = te.xyz;\n"
                                           "\n"
                                           "    while(num_iterations>0)\n"
                                           "    {\n"
                                           "        vec4 color = texture3D( volumeTexture, texcoord);\n"
                                           "\n"
                                           "        if (color.a>AlphaFuncValue &&  color.a>fragColor.a)\n"
                                           "        {\n"
                                           "            fragColor = color;\n"
                                           "        }\n"
                                           "\n"
                                           "        texcoord += dt;\n"
                                           "\n"
                                           "        --num_iterations;\n"
                                           "    }\n"
                                           "\n"
                                           "    fragColor.a *= TransparencyValue;\n"
                                           "\n"
                                           "    return fragColor;\n"
                                           "}\n"
                                           "\n";
