shader
shader: string = `uniform vec2 rotatedRectangleTopCenters[ROTATED_RECTANGLE_COUNT];uniform vec2 rotatedRectangleBottomCenters[ROTATED_RECTANGLE_COUNT];uniform float rotatedRectangleWidths[ROTATED_RECTANGLE_COUNT];float rotatedRectangleMinDistance(vec2 target, out float colorIndex) {colorIndex = 4.0;float minDistance = 1000.0;for (int i = 0; i < ROTATED_RECTANGLE_COUNT; i++) {vec2 top = rotatedRectangleTopCenters[i];vec2 bottom = rotatedRectangleBottomCenters[i];float height = length(bottom - top);vec2 d = (bottom - top) / height;vec2 q = (target - (top + bottom) * 0.5);q = mat2(d.x, -d.y, d.y, d.x) * q;q = abs(q) - vec2(height, rotatedRectangleWidths[i]) * 0.5;float dist = length(max(q, 0.0)) + min(max(q.x, q.y), 0.0);minDistance = min(minDistance, dist);}return minDistance;}`