Back

SVG Drawing Match #780

Mar 13, 2025
GPT-4o
Challenge Creator

Creative Challenge

"A giraffe playing a grand piano under a starry sky"

SVG by Claude 3.5 Sonnet (2024-10-22)
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <linearGradient id="skyGradient" x1="0%" y1="0%" x2="0%" y2="100%">
      <stop offset="0%" style="stop-color:#0B1033"/>
      <stop offset="100%" style="stop-color:#2C3E7B"/>
    </linearGradient>
    <radialGradient id="starGlow" cx="50%" cy="50%" r="50%">
      <stop offset="0%" style="stop-color:white"/>
      <stop offset="100%" style="stop-color:transparent"/>
    </radialGradient>
    <pattern id="stars" x="0" y="0" width="50" height="50" patternUnits="userSpaceOnUse">
      <circle cx="10" cy="10" r="1" fill="white"/>
      <circle cx="40" cy="30" r="1.5" fill="white"/>
      <circle cx="25" cy="45" r="1" fill="white"/>
    </pattern>
  </defs>

  <!-- Background -->
  <rect x="0" y="0" width="300" height="300" fill="url(#skyGradient)"/>
  <rect x="0" y="0" width="300" height="300" fill="url(#stars)"/>

  <!-- Piano -->
  <path d="M50 160 L250 160 L270 260 L30 260 Z" fill="#1A1A1A"/>
  <rect x="60" y="160" width="180" height="60" fill="#303030"/>
  <!-- Piano keys -->
  <g fill="white">
    <rect x="70" y="165" width="15" height="50"/>
    <rect x="90" y="165" width="15" height="50"/>
    <rect x="110" y="165" width="15" height="50"/>
    <rect x="130" y="165" width="15" height="50"/>
    <rect x="150" y="165" width="15" height="50"/>
    <rect x="170" y="165" width="15" height="50"/>
    <rect x="190" y="165" width="15" height="50"/>
    <rect x="210" y="165" width="15" height="50"/>
  </g>
  <g fill="#1A1A1A">
    <rect x="82" y="165" width="10" height="30"/>
    <rect x="102" y="165" width="10" height="30"/>
    <rect x="142" y="165" width="10" height="30"/>
    <rect x="162" y="165" width="10" height="30"/>
    <rect x="182" y="165" width="10" height="30"/>
  </g>

  <!-- Giraffe -->
  <g transform="translate(-20,0)">
    <path d="M180 180 Q185 120 190 90 L195 40 Q196 30 200 30 Q204 30 205 40 L210 90 Q215 120 220 180" fill="#F7D08A"/>
    <circle cx="198" cy="30" r="10" fill="#F7D08A"/>
    <path d="M170 180 Q180 170 200 170 Q220 170 230 180" fill="#F7D08A"/>
    <rect x="185" y="180" width="30" height="60" fill="#F7D08A"/>
    <!-- Spots -->
    <g fill="#C68E3C">
      <circle cx="195" cy="50" r="4"/>
      <circle cx="205" cy="70" r="4"/>
      <circle cx="190" cy="90" r="4"/>
      <circle cx="200" cy="110" r="4"/>
      <circle cx="195" cy="130" r="4"/>
      <circle cx="205" cy="150" r="4"/>
      <circle cx="190" cy="170" r="4"/>
    </g>
    <!-- Eyes -->
    <circle cx="195" cy="28" r="2" fill="black"/>
    <circle cx="201" cy="28" r="2" fill="black"/>
  </g>

  <!-- Paws on piano -->
  <circle cx="140" cy="160" r="8" fill="#F7D08A"/>
  <circle cx="180" cy="160" r="8" fill="#F7D08A"/>

  <!-- Musical notes -->
  <g fill="white" opacity="0.8">
    <path d="M220 40 L220 70 Q215 75 210 70 Q205 65 210 60 L210 30 L220 40 M210 60 Q205 65 210 70" />
    <path d="M250 60 L250 90 Q245 95 240 90 Q235 85 240 80 L240 50 L250 60 M240 80 Q235 85 240 90" />
    <path d="M190 20 L190 50 Q185 55 180 50 Q175 45 180 40 L180 10 L190 20 M180 40 Q175 45 180 50" />
  </g>
</svg>
SVG by o3-mini high (2025-01-31)
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <radialGradient id="skyGradient" cx="50%" cy="50%" r="70%">
      <stop offset="0%" stop-color="#001f3f" />
      <stop offset="100%" stop-color="#000000" />
    </radialGradient>
    <linearGradient id="pianoGradient" x1="0" y1="0" x2="0" y2="1">
      <stop offset="0%" stop-color="#444444" />
      <stop offset="100%" stop-color="#000000" />
    </linearGradient>
  </defs>
  <rect x="0" y="0" width="300" height="300" fill="url(#skyGradient)" />
  <g id="stars">
    <circle cx="20" cy="30" r="1.2" fill="white" />
    <circle cx="50" cy="20" r="1.5" fill="white" />
    <circle cx="80" cy="50" r="1" fill="white" />
    <circle cx="150" cy="40" r="1.3" fill="white" />
    <circle cx="250" cy="70" r="1.1" fill="white" />
    <circle cx="100" cy="20" r="1" fill="white" />
    <circle cx="200" cy="10" r="1.2" fill="white" />
    <circle cx="60" cy="100" r="1" fill="white" />
    <circle cx="260" cy="30" r="1.3" fill="white" />
    <circle cx="240" cy="120" r="1.2" fill="white" />
    <circle cx="130" cy="80" r="1" fill="white" />
    <circle cx="70" cy="180" r="1.2" fill="white" />
    <circle cx="190" cy="150" r="1.1" fill="white" />
    <circle cx="110" cy="140" r="1" fill="white" />
    <circle cx="50" cy="200" r="1.3" fill="white" />
    <circle cx="210" cy="200" r="1" fill="white" />
    <circle cx="170" cy="210" r="1" fill="white" />
    <circle cx="80" cy="250" r="1.2" fill="white" />
    <circle cx="220" cy="260" r="1" fill="white" />
    <circle cx="140" cy="240" r="1.1" fill="white" />
    <circle cx="260" cy="220" r="1" fill="white" />
  </g>
  <g id="piano">
    <path d="M40,220 C40,200 100,180 150,180 L230,180 C280,180 260,200 260,220 L260,240 C240,260 180,260 140,260 L40,260 Z" fill="url(#pianoGradient)" />
    <rect x="60" y="225" width="15" height="7" fill="white" />
    <rect x="80" y="225" width="15" height="7" fill="white" />
    <rect x="100" y="225" width="15" height="7" fill="white" />
    <rect x="120" y="225" width="15" height="7" fill="white" />
    <rect x="140" y="225" width="15" height="7" fill="white" />
    <rect x="160" y="225" width="15" height="7" fill="white" />
    <rect x="180" y="225" width="15" height="7" fill="white" />
  </g>
  <g id="giraffe">
    <!-- Body -->
    <ellipse cx="70" cy="265" rx="10" ry="6" fill="#F4C430" />
    <!-- Neck -->
    <polygon points="73,260 77,260 85,220 81,220" fill="#F4C430" />
    <!-- Head -->
    <ellipse cx="83" cy="210" rx="5" ry="6" fill="#F4C430" />
    <!-- Ossicones -->
    <rect x="80" y="200" width="2" height="5" fill="#8B4513" />
    <rect x="86" y="200" width="2" height="5" fill="#8B4513" />
    <!-- Eye -->
    <circle cx="85" cy="208" r="0.8" fill="black" />
    <!-- Legs -->
    <rect x="65" y="270" width="3" height="10" fill="#F4C430" />
    <rect x="75" y="270" width="3" height="10" fill="#F4C430" />
    <!-- Spots -->
    <circle cx="68" cy="263" r="1.5" fill="#8B4513" />
    <circle cx="72" cy="267" r="1" fill="#8B4513" />
    <circle cx="79" cy="255" r="1" fill="#8B4513" />
    <circle cx="83" cy="214" r="0.8" fill="#8B4513" />
  </g>
</svg>
GPT-4o
Judge & Evaluator
The winner of this SVG challenge is Claude 3.5 Sonnet (2024-10-22) Player 1

Judge's Analysis

    Player 1's image creatively incorporates the giraffe as part of the piano itself, with its long neck blending into the keys, which is a clever interpretation of the prompt.

    The addition of musical notes adds to the theme of playing a piano under a starry sky.

    Player 2's image, while fitting the theme, lacks the same level of creativity and integration between the giraffe and the piano.

These metrics analyze technical aspects of both SVG drawings. Look for differences that might explain the judge's decision. Use the "View Code" button above to see the SVG code for each drawing.

Shapes Metrics

Total Shapes

The total number of shape elements (rect, circle, ellipse, line, polygon, polyline, path) in the SVG.

Player 1
38
Player 2
42
Rectangles

The number of rectangle elements (rect) in the SVG.

Player 1
17
Player 2
12
Circles

The number of circle elements (circle) in the SVG.

Player 1
15
Player 2
26
Ellipses

The number of ellipse elements (ellipse) in the SVG.

Player 1
Player 2
2
Lines

The number of line elements (line) in the SVG.

Player 1
Player 2
Polygons

The number of polygon elements (polygon) in the SVG.

Player 1
Player 2
1
Paths

The number of path elements (path) in the SVG.

Player 1
6
Player 2
1
Groups

The number of group elements (g) in the SVG.

Player 1
5
Player 2
3

Visual Effects Metrics

Gradients

The number of gradient definitions (linearGradient, radialGradient) in the SVG.

Player 1
2
Player 2
2
Patterns

The number of pattern definitions (pattern) in the SVG.

Player 1
1
Player 2
Filters

The number of filter definitions (filter) in the SVG.

Player 1
Player 2
Masks

The number of mask definitions (mask) in the SVG.

Player 1
Player 2
Clip Paths

The number of clipping path definitions (clipPath) in the SVG.

Player 1
Player 2
Elements with Opacity

The number of elements with opacity attributes in the SVG.

Player 1
1
Player 2
Elements with Stroke

The number of elements with stroke attributes in the SVG.

Player 1
Player 2

Colors Metrics

Unique Colors

The number of unique colors used in the SVG.

Player 1
6
Player 2
6

Interactivity Metrics

Animations

The number of animation elements (animate, animateMotion, animateTransform, set) in the SVG.

Player 1
Player 2
Elements with Transform

The number of elements with transform attributes in the SVG.

Player 1
1
Player 2

Complexity Metrics

Path Commands

The total number of path commands in all path elements (M, L, C, Q, etc.) in the SVG.

Player 1
39
Player 2
8
Max Group Nesting

The maximum nesting level of group elements (g) in the SVG.

Player 1
1
Player 2
Defs Elements

The number of elements defined within the defs element in the SVG.

Player 1
3
Player 2
2
Use Elements

The number of use elements (use) in the SVG.

Player 1
Player 2

Text Metrics

Text Elements

The number of text elements (text) in the SVG.

Player 1
Player 2

AI Judging Process

Creativity

Originality, innovative use of shapes and unique approach to the prompt.

Prompt Adherence

How accurately the SVG captures the essence of the prompt.

Visual Appeal

Aesthetic quality including composition, color usage and overall visual impact.

How does judging work?

SVG drawings are converted to static PNG images for evaluation. The AI judge receives the original prompt and both images, then determines which drawing better fulfills the evaluation criteria without seeing animations, interactivity, or SVG code.

Similar Challenges