 <= 0.0 && d2 <= 0.0 && d3 <= 0.0) {
          return -min(abs(d1), min(abs(d2), abs(d3))); // 内部距离为负
        }
        
        return min(seg_distance(st, a, b), min(seg_distance(st, b, c), seg_distance(st, c, a))); // 外部为正
      }

      void main() {
        vec4 color = texture2D(tMap, vUv);
        vec2 uv = vUv - vec2(0.5);
        vec2 a = vec2(-0.577, 0) - vec2(0.5);
        vec2 b = vec2(0.5, 1.866) - vec2(0.5);
        vec2 c = vec2(1.577, 0) - vec2(0.5);

        float scale 