shader
shader: string = `uniform vec2 colorfulCircleCenters[COLORFUL_CIRCLE_COUNT];uniform float colorfulCircleRadii[COLORFUL_CIRCLE_COUNT];uniform int colorfulCircleColorIndex[COLORFUL_CIRCLE_COUNT];float circleMinDistance(vec2 target, out vec4 color) {float minDistance = 1000.0;for (int i = 0; i < COLORFUL_CIRCLE_COUNT; i++) {float dist = distance(colorfulCircleCenters[i], target) - colorfulCircleRadii[i];if (dist < minDistance) {color = readFromPalette(colorfulCircleColorIndex[i]);dist = minDistance;}}return minDistance;}`