        int radius = int(u_radius);
            float weightSum = 0.0;

            for (int x = -radius; x <= radius; ++x)
            {
                for (int y = -radius; y <= radius; ++y)
                {
                    float weight = gaussian(float(x), sigma) * gaussian(float(y), sigma);
                    color += PIXEL_AT(x, y) * weight;
                    weightSum += weight;
                }
            }

            out_color = color / weightSum;
        }`;

    const FRAG_SOURCE_HARR