Creative Challenge
"A giraffe wearing roller skates, gliding through a starry cosmic landscape"
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="cosmicGradient" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#3f50b5;stop-opacity:1"/>
<stop offset="100%" style="stop-color:#ff4081;stop-opacity:1"/>
</linearGradient>
<radialGradient id="starGradient" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
<stop offset="0%" style="stop-color:#ffffff;stop-opacity:1"/>
<stop offset="100%" style="stop-color:#ffeb3b;stop-opacity:1"/>
</radialGradient>
</defs>
<rect width="300" height="300" fill="url(#cosmicGradient)"/>
<circle cx="50" cy="50" r="3" fill="url(#starGradient)" />
<circle cx="80" cy="100" r="2" fill="url(#starGradient)" />
<circle cx="200" cy="50" r="4" fill="url(#starGradient)" />
<circle cx="250" cy="150" r="3" fill="url(#starGradient)" />
<circle cx="150" cy="250" r="2" fill="url(#starGradient)" />
<path d="M150 200 Q130 180 150 150 Q170 100 160 140 Q190 120 180 150 Q170 180 150 200" fill="none" stroke="#FFD54F" stroke-width="4" />
<g>
<polygon points="150,100 140,60 160,60" fill="#FFCC80" />
<ellipse cx="150" cy="90" rx="18" ry="15" fill="#FFB74D" />
<ellipse cx="130" cy="80" rx="5" ry="7" fill="#D77B30" />
<ellipse cx="170" cy="80" rx="5" ry="7" fill="#D77B30" />
<rect x="145" y="100" width="10" height="30" fill="#F57F17" />
<ellipse cx="160" cy="130" rx="10" ry="5" fill="#F57F17" />
<path d="M140 144 Q125 160 140 170 Q155 160 140 144" fill="#FF9800" />
<path d="M160 144 Q175 160 160 170 Q145 160 160 144" fill="#FF9800" />
<rect x="135" y="170" width="10" height="30" fill="#FF4081" />
<path d="M140 200 Q130 210 140 220 Q150 210 140 200" fill="#F50057" />
<path d="M120 170 L100 180 Q110 200 120 190 Q130 200 120 170" fill="#F50057" />
<path d="M180 170 L200 180 Q190 200 180 190 Q170 200 180 170" fill="#F50057" />
<circle cx="145" cy="80" r="8" fill="#8D6E63"/>
<circle cx="155" cy="80" r="8" fill="#8D6E63"/>
<ellipse cx="145" cy="85" rx="4" ry="7" fill="#D7CCC8" />
<ellipse cx="155" cy="85" rx="4" ry="7" fill="#D7CCC8" />
<path d="M150 60 Q145 55 140 60 Q145 50 150 60" fill="#D77B30" />
</g>
<g transform="translate(10, 220)">
<rect x="0" y="0" width="60" height="5" fill="#FF4081" />
<ellipse cx="15" cy="5" rx="15" ry="5" fill="#D32F2F" transform="rotate(15, 15, 5)"/>
<rect x="50" y="0" width="60" height="5" fill="#FF4081" />
<ellipse cx="65" cy="5" rx="15" ry="5" fill="#D32F2F" transform="rotate(-15, 65, 5)"/>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300">
<!-- Background cosmos -->
<defs>
<radialGradient id="cosmos" cx="50%" cy="50%" r="75%" fx="50%" fy="50%">
<stop offset="0%" stop-color="#1a0033" />
<stop offset="50%" stop-color="#0d0066" />
<stop offset="100%" stop-color="#000033" />
</radialGradient>
<radialGradient id="star-glow" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
<stop offset="0%" stop-color="white" stop-opacity="1" />
<stop offset="100%" stop-color="white" stop-opacity="0" />
</radialGradient>
<pattern id="stars" x="0" y="0" width="100" height="100" patternUnits="userSpaceOnUse">
<circle cx="10" cy="10" r="1" fill="white" />
<circle cx="50" cy="25" r="1.5" fill="white" />
<circle cx="77" cy="42" r="1" fill="white" />
<circle cx="93" cy="89" r="1.8" fill="white" />
<circle cx="35" cy="65" r="1.2" fill="white" />
<circle cx="15" cy="75" r="0.8" fill="white" />
<circle cx="82" cy="12" r="1.3" fill="white" />
</pattern>
<linearGradient id="giraffeSkin" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="#f2c069" />
<stop offset="100%" stop-color="#e8a948" />
</linearGradient>
<linearGradient id="giraffeSpots" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#784421" />
<stop offset="100%" stop-color="#5d3517" />
</linearGradient>
<linearGradient id="skateGradient" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#ff3399" />
<stop offset="100%" stop-color="#cc00ff" />
</linearGradient>
<filter id="glow" x="-20%" y="-20%" width="140%" height="140%">
<feGaussianBlur stdDeviation="3" result="blur" />
<feComposite in="SourceGraphic" in2="blur" operator="over" />
</filter>
</defs>
<!-- Cosmic background -->
<rect x="0" y="0" width="300" height="300" fill="url(#cosmos)" />
<rect x="0" y="0" width="300" height="300" fill="url(#stars)" />
<!-- Large stars with glow -->
<circle cx="50" cy="70" r="2" fill="white" />
<circle cx="50" cy="70" r="6" fill="url(#star-glow)" opacity="0.7" />
<circle cx="270" cy="120" r="2.5" fill="white" />
<circle cx="270" cy="120" r="8" fill="url(#star-glow)" opacity="0.8" />
<circle cx="90" cy="230" r="2" fill="white" />
<circle cx="90" cy="230" r="5" fill="url(#star-glow)" opacity="0.6" />
<circle cx="190" cy="40" r="2.2" fill="white" />
<circle cx="190" cy="40" r="7" fill="url(#star-glow)" opacity="0.7" />
<!-- Cosmic dust trails -->
<path d="M0,280 C50,250 100,270 150,250 S250,220 300,240" fill="none" stroke="#8855dd" stroke-width="20" opacity="0.1" />
<path d="M0,200 C70,180 130,220 200,180 S270,150 300,180" fill="none" stroke="#aa66ee" stroke-width="15" opacity="0.1" />
<!-- Giraffe body -->
<g transform="translate(150, 150) scale(0.8) rotate(15)">
<!-- Body -->
<ellipse cx="0" cy="20" rx="30" ry="45" fill="url(#giraffeSkin)" />
<!-- Neck -->
<path d="M0,-20 C-10,-40 -15,-80 -5,-110 C5,-140 10,-160 8,-180" fill="none" stroke="url(#giraffeSkin)" stroke-width="16" stroke-linecap="round" />
<!-- Head -->
<ellipse cx="8" cy="-185" rx="12" ry="17" fill="url(#giraffeSkin)" />
<!-- Ears -->
<ellipse cx="16" cy="-192" rx="4" ry="6" fill="url(#giraffeSkin)" />
<ellipse cx="2" cy="-192" rx="4" ry="6" fill="url(#giraffeSkin)" />
<!-- Eyes -->
<circle cx="14" cy="-182" r="2" fill="black" />
<circle cx="15" cy="-183" r="0.5" fill="white" />
<!-- Horns/ossicones -->
<path d="M2,-198 L0,-208" stroke="#784421" stroke-width="3" stroke-linecap="round" />
<path d="M16,-198 L18,-208" stroke="#784421" stroke-width="3" stroke-linecap="round" />
<circle cx="0" cy="-208" r="2" fill="#784421" />
<circle cx="18" cy="-208" r="2" fill="#784421" />
<!-- Spots on body -->
<g>
<ellipse cx="-15" cy="0" rx="6" ry="8" fill="url(#giraffeSpots)" />
<ellipse cx="10" cy="10" rx="7" ry="5" fill="url(#giraffeSpots)" />
<ellipse cx="-5" cy="30" rx="5" ry="7" fill="url(#giraffeSpots)" />
<ellipse cx="15" cy="30" rx="6" ry="4" fill="url(#giraffeSpots)" />
<ellipse cx="0" cy="50" rx="4" ry="6" fill="url(#giraffeSpots)" />
</g>
<!-- Spots on neck -->
<g>
<ellipse cx="-5" cy="-40" rx="4" ry="6" fill="url(#giraffeSpots)" transform="rotate(-15)" />
<ellipse cx="-8" cy="-70" rx="3" ry="5" fill="url(#giraffeSpots)" transform="rotate(-20)" />
<ellipse cx="-4" cy="-100" rx="4" ry="4" fill="url(#giraffeSpots)" transform="rotate(-25)" />
<ellipse cx="-5" cy="-130" rx="3" ry="5" fill="url(#giraffeSpots)" transform="rotate(-10)" />
<ellipse cx="-2" cy="-160" rx="2" ry="4" fill="url(#giraffeSpots)" transform="rotate(-5)" />
</g>
<!-- Legs -->
<path d="M-20,50 L-30,95" stroke="url(#giraffeSkin)" stroke-width="10" stroke-linecap="round" />
<path d="M20,50 L30,95" stroke="url(#giraffeSkin)" stroke-width="10" stroke-linecap="round" />
<path d="M-15,55 L-20,95" stroke="url(#giraffeSkin)" stroke-width="10" stroke-linecap="round" />
<path d="M15,55 L20,95" stroke="url(#giraffeSkin)" stroke-width="10" stroke-linecap="round" />
<!-- Roller skates -->
<g>
<!-- Front left skate -->
<rect x="-35" y="95" width="15" height="8" rx="2" fill="url(#skateGradient)" filter="url(#glow)" />
<circle cx="-32" cy="103" r="4" fill="#333" stroke="#999" />
<circle cx="-24" cy="103" r="4" fill="#333" stroke="#999" />
<!-- Front right skate -->
<rect x="25" y="95" width="15" height="8" rx="2" fill="url(#skateGradient)" filter="url(#glow)" />
<circle cx="28" cy="103" r="4" fill="#333" stroke="#999" />
<circle cx="36" cy="103" r="4" fill="#333" stroke="#999" />
<!-- Back left skate -->
<rect x="-25" y="95" width="15" height="8" rx="2" fill="url(#skateGradient)" filter="url(#glow)" />
<circle cx="-22" cy="103" r="4" fill="#333" stroke="#999" />
<circle cx="-14" cy="103" r="4" fill="#333" stroke="#999" />
<!-- Back right skate -->
<rect x="15" y="95" width="15" height="8" rx="2" fill="url(#skateGradient)" filter="url(#glow)" />
<circle cx="18" cy="103" r="4" fill="#333" stroke="#999" />
<circle cx="26" cy="103" r="4" fill="#333" stroke="#999" />
</g>
<!-- Tail -->
<path d="M-25,40 C-35,50 -40,60 -30,75" fill="none" stroke="url(#giraffeSkin)" stroke-width="5" stroke-linecap="round" />
<ellipse cx="-30" cy="78" rx="4" ry="3" fill="#784421" />
</g>
<!-- Motion lines -->
<path d="M60,180 C80,175 100,178 120,170" stroke="white" stroke-width="2" stroke-dasharray="5,5" opacity="0.6" />
<path d="M40,150 C60,145 80,148 100,140" stroke="white" stroke-width="2" stroke-dasharray="5,5" opacity="0.6" />
<path d="M80,210 C100,205 120,208 140,200" stroke="white" stroke-width="2" stroke-dasharray="5,5" opacity="0.6" />
<!-- Sparkle effects -->
<g filter="url(#glow)">
<circle cx="120" cy="200" r="2" fill="white" />
<circle cx="80" cy="160" r="1.5" fill="white" />
<circle cx="200" cy="180" r="2" fill="white" />
<circle cx="220" cy="150" r="1.5" fill="white" />
</g>
</svg>
Judge's Analysis
Player 2's submission more effectively captures the idea of a giraffe wearing roller skates in a starry cosmic landscape.
The composition is clear, with a well-defined giraffe and a vibrant cosmic background.
The technical execution is strong, with smooth lines and a cohesive color scheme.
In contrast, Player 1's image is more abstract and less immediately recognizable as a giraffe, making it less effective in adhering to the prompt.
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
"Flamingo in a tuxedo, tap-dancing on a lilypad"
"Flying cat playing a trumpet in a starry skyline"
"A sun setting behind a skyline of teacups"
"Cloud with one quirky face winking"
"Dancing Cactus in a Tuxedo"
"A giraffe wearing a top hat, juggling planets in space"