Creative Challenge
"A giraffe riding a skateboard under a starry sky."
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
<defs>
<!-- Gradients -->
<radialGradient id="skyGradient" cx="50%" cy="40%" r="70%" fx="50%" fy="30%">
<stop offset="0%" style="stop-color:#0A0A2A;" />
<stop offset="40%" style="stop-color:#1E1145;" />
<stop offset="100%" style="stop-color:#030310;" />
</radialGradient>
<radialGradient id="moonGradient" cx="50%" cy="50%" r="50%">
<stop offset="60%" style="stop-color:#FFFFF0;" />
<stop offset="100%" style="stop-color:#F0E68C;" />
</radialGradient>
<linearGradient id="skateboardDeckGradient" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" style="stop-color:#FF6B6B;"/>
<stop offset="30%" style="stop-color:#FFA500;"/>
<stop offset="70%" style="stop-color:#FFD166;"/>
<stop offset="100%" style="stop-color:#06D6A0;"/>
</linearGradient>
<!-- Patterns -->
<pattern id="giraffeSpots" patternUnits="userSpaceOnUse" width="25" height="25" x="0" y="0">
<rect width="25" height="25" fill="#FFC107"/>
<path d="M3 4 Q6 1 8 4 Q11 7 8 9 Q5 12 3 9 Q0 6 3 4 Z" fill="#A0522D"/>
<path d="M13 15 Q16 12 18 15 Q21 18 18 20 Q15 23 13 20 Q10 17 13 15 Z" fill="#8B4513"/>
<path d="M20 2 Q23 0 24 2 Q25 5 23 7 Q20 8 20 7 Q18 4 20 2 Z" fill="#8B4513" transform="rotate(15 12.5 12.5)"/>
<path d="M6 19 Q8 16 11 19 Q13 22 10 24 Q7 26 6 24 Q4 21 6 19 Z" fill="#A0522D" transform="rotate(-10 12.5 12.5)"/>
</pattern>
<!-- Filters -->
<filter id="starGlow">
<feGaussianBlur stdDeviation="0.7" result="blur"/>
<feMerge>
<feMergeNode in="blur"/>
<feMergeNode in="SourceGraphic"/>
</feMerge>
</filter>
</defs>
<!-- Background -->
<rect width="300" height="300" fill="url(#skyGradient)" />
<!-- Stars -->
<g id="stars">
<circle cx="50" cy="30" r="1.5" fill="#FFFFFF" opacity="0.9" filter="url(#starGlow)" />
<circle cx="100" cy="50" r="1" fill="#FFFFE0" opacity="0.8" />
<circle cx="200" cy="20" r="2" fill="#FFFFFF" opacity="1" filter="url(#starGlow)" />
<circle cx="20" cy="20" r="1" fill="#FFF5EE" opacity="0.7"/>
<circle cx="80" cy="15" r="1.2" fill="#FFFFF0" opacity="0.9"/>
<circle cx="120" cy="30" r="0.8" fill="#F8F8FF" opacity="0.6"/>
<circle cx="180" cy="45" r="1.5" fill="#FFFFFF" opacity="0.8" filter="url(#starGlow)"/>
<circle cx="250" cy="25" r="1" fill="#FFFFE0" opacity="0.7"/>
<circle cx="280" cy="60" r="1.3" fill="#FFFACD" opacity="0.9" filter="url(#starGlow)"/>
<circle cx="30" cy="70" r="1.1" fill="#FFFFF0" opacity="0.8"/>
<circle cx="70" cy="90" r="0.9" fill="#FFFFFF" opacity="0.7"/>
<circle cx="150" cy="80" r="1.6" fill="#FFF5EE" opacity="1" filter="url(#starGlow)"/>
<circle cx="210" cy="75" r="1" fill="#FFFFE0" opacity="0.8"/>
<circle cx="270" cy="95" r="1.2" fill="#FFFFFF" opacity="0.9"/>
<circle cx="15" cy="120" r="1.4" fill="#FFFFF0" opacity="0.8" filter="url(#starGlow)"/>
<circle cx="60" cy="150" r="1" fill="#F8F8FF" opacity="0.7"/>
<circle cx="100" cy="130" r="1.3" fill="#FFFFFF" opacity="0.9" filter="url(#starGlow)"/>
<circle cx="190" cy="110" r="0.8" fill="#FFFFE0" opacity="0.6"/>
<circle cx="240" cy="140" r="1.5" fill="#FFFACD" opacity="0.8" filter="url(#starGlow)"/>
<circle cx="290" cy="120" r="1" fill="#FFFFF0" opacity="0.7"/>
<circle cx="40" cy="100" r="1.2" fill="#FFFFFF" opacity="0.8"/>
<circle cx="260" cy="170" r="1" fill="#FFFFE0" opacity="0.7" filter="url(#starGlow)"/>
<circle cx="130" cy="160" r="0.9" fill="#F8F8FF" opacity="0.6"/>
<circle cx="80" cy="180" r="1.4" fill="#FFFFFF" opacity="0.9" filter="url(#starGlow)"/>
<path d="M10 50 L11.5 47 L13 50 L11.5 53 Z" fill="#FFF5EE" opacity="0.6"/>
<path d="M280 80 L281.5 77 L283 80 L281.5 83 Z" fill="#FFFFF0" opacity="0.7"/>
<path d="M55 110 L56.5 107 L58 110 L56.5 113 Z" fill="#FFFFFF" opacity="0.5" filter="url(#starGlow)"/>
<path d="M170 120 L171 118 L172 120 L171 122 L170 120 L170 118 L171 116 L172 118 L172 120 L173 122 L172 122 L171 124 L170 122 Z" fill="#FFFFFF" opacity="0.6" transform="scale(0.8) rotate(15 171 120)"/>
<path d="M220 150 L221 148 L222 150 L221 152 L220 150 L220 148 L221 146 L222 148 L222 150 L223 152 L222 152 L221 154 L220 152 Z" fill="#FFFFE0" opacity="0.5" transform="scale(0.9) rotate(-25 221 150)" filter="url(#starGlow)"/>
</g>
<!-- Moon -->
<path d="M230 35 Q255 60 230 85 Q245 60 230 35 Z" fill="url(#moonGradient)" transform="rotate(-20 242.5 60)"/>
<!-- Ground (subtle) -->
<path d="M0 285 Q150 270 300 285 L300 300 L0 300 Z" fill="#080818" opacity="0.7"/>
<!-- Skateboard -->
<g id="skateboard" transform="translate(150 262) rotate(-3)">
<!-- Back axle wheels -->
<circle cx="-30" cy="9" r="6" fill="#383838" stroke="#181818" stroke-width="1"/>
<circle cx="-30" cy="9" r="3" fill="#4D4D4D"/>
<circle cx="-15" cy="9" r="6" fill="#3A3A3A" stroke="#1A1A1A" stroke-width="1"/>
<circle cx="-15" cy="9" r="3" fill="#4F4F4F"/>
<!-- Trucks -->
<rect x="-32" y="1" width="10" height="5" fill="#505050" rx="1"/>
<rect x="12" y="1" width="10" height="5" fill="#505050" rx="1"/>
<!-- Deck -->
<rect id="theDeck" x="-45" y="-6" width="90" height="18" rx="7" ry="7" fill="url(#skateboardDeckGradient)" stroke="#222222" stroke-width="1.5"/>
<g id="theGripTape" stroke="#000" stroke-opacity="0.15" stroke-width="0.7" transform="translate(0 1)">
<line x1="-40" y1="-2.5" x2="40" y2="-2.5" /> <line x1="-40" y1="-0.5" x2="40" y2="-0.5" /> <line x1="-40" y1="1.5" x2="40" y2="1.5" />
</g>
<!-- Front axle wheels -->
<circle cx="15" cy="9" r="6" fill="#404040" stroke="#202020" stroke-width="1"/>
<circle cx="15" cy="9" r="3" fill="#555555"/>
<circle cx="30" cy="9" r="6" fill="#424242" stroke="#222222" stroke-width="1"/>
<circle cx="30" cy="9" r="3" fill="#575757"/>
</g>
<!-- Giraffe -->
<g id="giraffe" transform="translate(150 150)">
<!-- Tail -->
<path d="M -28 38 Q -40 48 -45 63" stroke="#654321" stroke-width="2.5" fill="none" stroke-linecap="round"/>
<ellipse cx="-46" cy="65" rx="4.5" ry="3.5" fill="#4A3B31" stroke="#30241C" stroke-width="0.5"/>
<!-- Back Left Leg -->
<g id="back-left-leg">
<path d="M -18 40 Q -28 60 -30 80 L -25 82 L -22 60 Z" fill="url(#giraffeSpots)" stroke="#654321" stroke-width="1.2"/>
<path d="M -30 80 Q -32 95 -28 106 L -23 104 L -25 82 Z" fill="url(#giraffeSpots)" stroke="#654321" stroke-width="1.2"/>
</g>
<!-- Back Right Leg -->
<g id="back-right-leg">
<path d="M -5 43 Q -12 63 -15 83 L -10 85 L -8 63 Z" fill="url(#giraffeSpots)" stroke="#654321" stroke-width="1.2"/>
<path d="M -15 83 Q -17 98 -13 108 L -8 106 L -10 85 Z" fill="url(#giraffeSpots)" stroke="#654321" stroke-width="1.2"/>
</g>
<!-- Body -->
<ellipse cx="0" cy="35" rx="35" ry="22" fill="url(#giraffeSpots)" stroke="#654321" stroke-width="1.5" transform="rotate(-8 0 35)"/>
<!-- Front Left Leg -->
<g id="front-left-leg">
<path d="M 18 32 Q 22 55 18 75 L 23 77 L 27 55 Z" fill="url(#giraffeSpots)" stroke="#654321" stroke-width="1.2"/>
<path d="M 18 75 Q 16 90 20 103 L 25 101 L 23 77 Z" fill="url(#giraffeSpots)" stroke="#654321" stroke-width="1.2"/>
</g>
<!-- Front Right Leg -->
<g id="front-right-leg">
<path d="M 28 36 Q 38 58 33 78 L 38 80 L 42 58 Z" fill="url(#giraffeSpots)" stroke="#654321" stroke-width="1.2"/>
<path d="M 33 78 Q 31 93 35 106 L 40 104 L 38 80 Z" fill="url(#giraffeSpots)" stroke="#654321" stroke-width="1.2"/>
</g>
<!-- Neck -->
<path d="M 10 20 C 20 -20, 20 -60, 10 -90 L 0 -95 C -10 -65, -10 -25, 0 15 Z" fill="url(#giraffeSpots)" stroke="#654321" stroke-width="1.5"/>
<!-- Head -->
<g transform="translate(5 -100) rotate(10)">
<ellipse cx="0" cy="0" rx="18" ry="14" fill="url(#giraffeSpots)" stroke="#654321" stroke-width="1.5"/>
<ellipse cx="-15" cy="3" rx="8" ry="6" fill="#F5DEB3" stroke="#654321" stroke-width="1"/>
<path d="M -19 4 Q -16 6 -13 4" stroke="#503920" stroke-width="0.7" fill="none" stroke-linecap="round"/>
<ellipse cx="-6" cy="-4" rx="4" ry="3.5" fill="white" stroke="#444" stroke-width="0.3"/>
<circle cx="-5" cy="-4" r="2" fill="#1C1C1C"/>
<circle cx="-4.5" cy="-4.5" r="0.7" fill="white" opacity="0.9"/>
<g id="ossicones" transform="translate(0 -13)">
<ellipse cx="1" cy="-2" rx="3" ry="4.5" fill="#8B4513" stroke="#654321" stroke-width="0.7" transform="rotate(-10 1 -2)"/>
<ellipse cx="1" cy="-3.5" rx="2" ry="2.5" fill="#A0522D" transform="rotate(-10 1 -2)"/>
<ellipse cx="7" cy="-3" rx="3" ry="4.5" fill="#8B4513" stroke="#654321" stroke-width="0.7" transform="rotate(10 7 -3)"/>
<ellipse cx="7" cy="-4.5" rx="2" ry="2.5" fill="#A0522D" transform="rotate(10 7 -3)"/>
</g>
<path d="M13 1 Q23 -7 19 -14 L 16 -11 Q19 -4 13 1 Z" fill="#FFC107" stroke="#8B4513" stroke-width="1" transform="rotate(-35 13 1)"/>
</g>
<!-- Mane -->
<g stroke="#6D4C41" stroke-linecap="round">
<path d="M 8 -88 C 4 -60, 3.5 -30, 3.5 10" stroke-width="4.5" fill="none"/>
<path d="M 8 -88 C 4 -60, 3.5 -30, 3.5 10" stroke-width="1.5" stroke="#49332B" fill="none"/>
<path d="M 7.5 -85 L 5 -87 L 6 -82 Z" fill="#6D4C41"/>
<path d="M 6.5 -70 L 4 -72 L 5 -67 Z" fill="#6D4C41"/>
<path d="M 5.5 -55 L 3 -57 L 4 -52 Z" fill="#6D4C41"/>
<path d="M 4.5 -40 L 2 -42 L 3 -37 Z" fill="#6D4C41"/>
<path d="M 3.5 -25 L 1 -27 L 2 -22 Z" fill="#6D4C41"/>
</g>
</g>
</svg>
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="skyGradient" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="#000428" />
<stop offset="100%" stop-color="#004e92" />
</linearGradient>
<radialGradient id="starGlow" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
<stop offset="0%" stop-color="#ffffff" stop-opacity="1" />
<stop offset="100%" stop-color="#ffffff" stop-opacity="0" />
</radialGradient>
<pattern id="stars" x="0" y="0" width="10" height="10" patternUnits="userSpaceOnUse">
<circle cx="5" cy="5" r="1" fill="white" />
</pattern>
</defs>
<rect width="300" height="300" fill="url(#skyGradient)" />
<rect width="300" height="300" fill="url(#stars)" opacity="0.8" />
<circle cx="150" cy="100" r="50" fill="url(#starGlow)" />
<circle cx="50" cy="50" r="2" fill="white" />
<circle cx="250" cy="30" r="2" fill="white" />
<circle cx="100" cy="150" r="2" fill="white" />
<circle cx="200" cy="200" r="2" fill="white" />
<circle cx="280" cy="100" r="2" fill="white" />
<circle cx="70" cy="250" r="2" fill="white" />
<circle cx="220" cy="50" r="2" fill="white" />
<circle cx="30" cy="200" r="2" fill="white" />
<circle cx="150" cy="250" r="2" fill="white" />
<path d="M100 200 L150 150 L200 200 Z" fill="#8B4513" />
<rect x="100" y="200" width="100" height="20" fill="#A0522D" />
<circle cx="120" y="220" r="10" fill="#808080" />
<circle cx="180" y="220" r="10" fill="#808080" />
<path d="M120 220 L120 240 L180 240 L180 220 Z" fill="#D3D3D3" />
<path d="M130 240 L130 250 L170 250 L170 240 Z" fill="#A9A9A9" />
<path d="M140 250 L140 260 L160 260 L160 250 Z" fill="#808080" />
<path d="M150 260 L150 270 L150 270 L150 260 Z" fill="#696969" />
<path d="M150 150 L150 100 L170 120 L150 150 Z" fill="#FFD700" />
<path d="M150 100 L170 120 L130 120 L150 100 Z" fill="#FFA500" />
<path d="M150 100 L130 120 L150 150 L150 100 Z" fill="#FF8C00" />
<path d="M150 150 L170 120 L150 100 L150 150 Z" fill="#FF4500" />
<path d="M150 100 L150 150 L130 120 L150 100 Z" fill="#FF6347" />
<path d="M150 150 L130 120 L150 100 L150 150 Z" fill="#FF7F50" />
<path d="M150 100 L150 150 L170 120 L150 100 Z" fill="#FFA07A" />
<path d="M150 150 L170 120 L150 100 L150 150 Z" fill="#FFDAB9" />
<path d="M150 100 L150 150 L130 120 L150 100 Z" fill="#FFE4B5" />
<path d="M150 150 L130 120 L150 100 L150 150 Z" fill="#FFEFD5" />
<path d="M150 100 L150 150 L170 120 L150 100 Z" fill="#FFFACD" />
<path d="M150 150 L170 120 L150 100 L150 150 Z" fill="#FAFAD2" />
<path d="M150 100 L150 150 L130 120 L150 100 Z" fill="#FFFFE0" />
<path d="M150 150 L130 120 L150 100 L150 150 Z" fill="#FFFFF0" />
<path d="M150 100 L150 150 L170 120 L150 100 Z" fill="#F0FFF0" />
<path d="M150 150 L170 120 L150 100 L150 150 Z" fill="#F5FFFA" />
<path d="M150 100 L150 150 L130 120 L150 100 Z" fill="#F0FFFF" />
<path d="M150 150 L130 120 L150 100 L150 150 Z" fill="#F0F8FF" />
<path d="M150 100 L150 150 L170 120 L150 100 Z" fill="#E6E6FA" />
<path d="M150 150 L170 120 L150 100 L150 150 Z" fill="#FFF0F5" />
<path d="M150 100 L150 150 L130 120 L150 100 Z" fill="#FFE4E1" />
<path d="M150 150 L130 120 L150 100 L150 150 Z" fill="#FFFAFA" />
<path d="M150 100 L150 150 L170 120 L150 100 Z" fill="#F8F8FF" />
<path d="M150 150 L170 120 L150 100 L150 150 Z" fill="#F5F5F5" />
<path d="M150 100 L150 150 L130 120 L150 100 Z" fill="#FAFAFA" />
<path d="M150 150 L130 120 L150 100 L150 150 Z" fill="#FFFFFF" />
</svg>
Judge's Analysis
Player 1's image directly adheres to the prompt, depicting a giraffe riding a skateboard under a starry sky with clear creativity and attention to detail.
Player 2's submission, while visually interesting, does not represent the prompt effectively as it lacks both the giraffe and skateboard elements.
Player 1's work is more relevant and visually appealing in this context.
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
The total number of shape elements (rect, circle, ellipse, line, polygon, polyline, path) in the SVG.
The number of rectangle elements (rect) in the SVG.
The number of circle elements (circle) in the SVG.
The number of ellipse elements (ellipse) in the SVG.
The number of line elements (line) in the SVG.
The number of polygon elements (polygon) in the SVG.
The number of path elements (path) in the SVG.
The number of group elements (g) in the SVG.
Visual Effects Metrics
The number of gradient definitions (linearGradient, radialGradient) in the SVG.
The number of pattern definitions (pattern) in the SVG.
The number of filter definitions (filter) in the SVG.
The number of mask definitions (mask) in the SVG.
The number of clipping path definitions (clipPath) in the SVG.
The number of elements with opacity attributes in the SVG.
The number of elements with stroke attributes in the SVG.
Colors Metrics
The number of unique colors used in the SVG.
Interactivity Metrics
The number of animation elements (animate, animateMotion, animateTransform, set) in the SVG.
The number of elements with transform attributes in the SVG.
Complexity Metrics
The total number of path commands in all path elements (M, L, C, Q, etc.) in the SVG.
The maximum nesting level of group elements (g) in the SVG.
The number of elements defined within the defs element in the SVG.
The number of use elements (use) in the SVG.
Text Metrics
The number of text elements (text) in the SVG.
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
"A cactus wearing sunglasses on a skateboard under a rainbow."
"An owl wearing aviator goggles flying through a galaxy of glowing donuts."
"A balloon floating above a cactus, teetering on the edge of popping."