Creative Challenge
"Giraffe in space wearing a jetpack, orbiting a planet with a tiny hat"
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
<defs>
<radialGradient id="space" cx="50%" cy="50%" r="70%">
<stop offset="0%" stop-color="#1a0b2e"/>
<stop offset="100%" stop-color="#000010"/>
</radialGradient>
<radialGradient id="planet" cx="40%" cy="40%" r="60%">
<stop offset="0%" stop-color="#7B68EE"/>
<stop offset="100%" stop-color="#4B0082"/>
</radialGradient>
<filter id="glow">
<feGaussianBlur stdDeviation="2" result="coloredBlur"/>
<feMerge>
<feMergeNode in="coloredBlur"/>
<feMergeNode in="SourceGraphic"/>
</feMerge>
</filter>
</defs>
<!-- Background -->
<rect x="0" y="0" width="300" height="300" fill="url(#space)"/>
<!-- Stars -->
<g fill="white">
<circle cx="50" cy="50" r="1"/>
<circle cx="150" cy="30" r="1.5"/>
<circle cx="250" cy="70" r="1"/>
<circle cx="80" cy="200" r="1.2"/>
<circle cx="220" cy="180" r="1"/>
<circle cx="180" cy="250" r="1.5"/>
</g>
<!-- Planet -->
<circle cx="200" cy="200" r="60" fill="url(#planet)"/>
<path d="M160 180 Q200 240 240 180" fill="none" stroke="rgba(255,255,255,0.3)" stroke-width="4"/>
<!-- Planet's Hat -->
<path d="M190 130 L210 130 L205 110 L195 110 Z" fill="#ff4d4d"/>
<rect x="187" y="127" width="26" height="5" fill="#ff4d4d"/>
<!-- Giraffe -->
<g transform="translate(100,150) rotate(-30)">
<!-- Jetpack -->
<rect x="-20" y="0" width="30" height="40" rx="5" fill="#silver"/>
<path d="M-15 40 L-10 60 L-5 40" fill="orange" filter="url(#glow)"/>
<path d="M5 40 L0 60 L-5 40" fill="orange" filter="url(#glow)"/>
<!-- Giraffe Body -->
<path d="M0 0 Q-10 -20 0 -40 L0 -60 Q5 -70 10 -60 L10 -40 Q20 -20 10 0" fill="#FFD700"/>
<path d="M0 -60 Q-5 -80 0 -90 L5 -90 Q10 -80 5 -60" fill="#FFD700"/>
<!-- Spots -->
<g fill="#CD853F">
<circle cx="2" cy="-50" r="3"/>
<circle cx="7" cy="-30" r="3"/>
<circle cx="0" cy="-20" r="3"/>
<circle cx="5" cy="-70" r="2"/>
</g>
<!-- Space Helmet -->
<circle cx="2" cy="-95" r="10" fill="rgba(255,255,255,0.3)"/>
<circle cx="2" cy="-95" r="8" fill="none" stroke="white"/>
</g>
<!-- Orbit Path -->
<circle cx="200" cy="200" r="100" fill="none" stroke="rgba(255,255,255,0.1)" stroke-dasharray="5,5"/>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300">
<!-- Definitions for reusable elements -->
<defs>
<!-- Space background gradient -->
<radialGradient id="spaceGradient" cx="50%" cy="50%" r="70%" fx="50%" fy="50%">
<stop offset="0%" stop-color="#1a0033" />
<stop offset="50%" stop-color="#0c0020" />
<stop offset="100%" stop-color="#000000" />
</radialGradient>
<!-- Star pattern -->
<pattern id="starPattern" x="0" y="0" width="50" height="50" patternUnits="userSpaceOnUse">
<circle cx="10" cy="10" r="0.8" fill="white" />
<circle cx="25" cy="15" r="0.6" fill="white" />
<circle cx="40" cy="5" r="1" fill="white" />
<circle cx="5" cy="30" r="0.7" fill="white" />
<circle cx="35" cy="35" r="0.9" fill="white" />
<circle cx="15" cy="45" r="0.8" fill="white" />
<circle cx="45" cy="25" r="0.6" fill="white" />
</pattern>
<!-- Planet gradient -->
<radialGradient id="planetGradient" cx="50%" cy="50%" r="50%" fx="30%" fy="30%">
<stop offset="0%" stop-color="#8a2be2" />
<stop offset="70%" stop-color="#4b0082" />
<stop offset="100%" stop-color="#2a004d" />
</radialGradient>
<!-- Jetpack flame gradient -->
<linearGradient id="flameGradient" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#ff5e00" />
<stop offset="50%" stop-color="#ff8c00" />
<stop offset="100%" stop-color="#ffcc00" />
</linearGradient>
<!-- Giraffe spot pattern -->
<pattern id="giraffePattern" x="0" y="0" width="10" height="10" patternUnits="userSpaceOnUse">
<path d="M2.5,2.5 Q3.5,1 5,2.5 Q6.5,4 5,5 Q3.5,6.5 2.5,5 Q1,3.5 2.5,2.5 Z" fill="#b25800" />
</pattern>
<!-- Hat ribbon gradient -->
<linearGradient id="ribbonGradient" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="#ff9999" />
<stop offset="100%" stop-color="#ff4d4d" />
</linearGradient>
<!-- Metal texture for jetpack -->
<linearGradient id="metalGradient" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#cc3333" />
<stop offset="50%" stop-color="#aa2222" />
<stop offset="100%" stop-color="#cc3333" />
</linearGradient>
<!-- Filter for glow effects -->
<filter id="glow" x="-50%" y="-50%" width="200%" height="200%">
<feGaussianBlur stdDeviation="2.5" result="blur" />
<feMerge>
<feMergeNode in="blur" />
<feMergeNode in="SourceGraphic" />
</feMerge>
</filter>
</defs>
<!-- Background -->
<rect x="0" y="0" width="300" height="300" fill="url(#spaceGradient)" />
<rect x="0" y="0" width="300" height="300" fill="url(#starPattern)" />
<!-- Additional stars with twinkle animation -->
<g>
<circle cx="30" cy="120" r="1" fill="white">
<animate attributeName="opacity" values="1;0.2;1" dur="2s" repeatCount="indefinite" />
</circle>
<circle cx="250" cy="70" r="1.2" fill="white">
<animate attributeName="opacity" values="1;0.3;1" dur="3s" repeatCount="indefinite" />
</circle>
<circle cx="180" cy="30" r="0.8" fill="white">
<animate attributeName="opacity" values="1;0.4;1" dur="4s" repeatCount="indefinite" />
</circle>
<circle cx="70" cy="220" r="1" fill="white">
<animate attributeName="opacity" values="1;0.2;1" dur="3.5s" repeatCount="indefinite" />
</circle>
<circle cx="280" cy="180" r="1.1" fill="white">
<animate attributeName="opacity" values="1;0.2;1" dur="2.5s" repeatCount="indefinite" />
</circle>
<circle cx="100" cy="280" r="0.9" fill="white">
<animate attributeName="opacity" values="1;0.3;1" dur="4s" repeatCount="indefinite" />
</circle>
<!-- Some bigger stars -->
<circle cx="270" cy="50" r="1.5" fill="white">
<animate attributeName="opacity" values="0.7;1;0.7" dur="3s" repeatCount="indefinite" />
</circle>
<circle cx="60" cy="60" r="1.6" fill="white">
<animate attributeName="opacity" values="0.8;0.3;0.8" dur="2.7s" repeatCount="indefinite" />
</circle>
</g>
<!-- Distant sun with glow -->
<circle cx="40" cy="40" r="15" fill="#ffff00" opacity="0.7" filter="url(#glow)">
<animate attributeName="opacity" values="0.6;0.8;0.6" dur="3s" repeatCount="indefinite" />
</circle>
<circle cx="40" cy="40" r="20" fill="none" stroke="#ffff00" stroke-width="2" opacity="0.3">
<animate attributeName="r" values="20;30;20" dur="3s" repeatCount="indefinite" />
<animate attributeName="opacity" values="0.3;0;0.3" dur="3s" repeatCount="indefinite" />
</circle>
<!-- Orbit path (visible) -->
<ellipse cx="150" cy="150" rx="100" ry="70" fill="none" stroke="#ffffff" stroke-width="0.5" stroke-dasharray="2,3" />
<!-- Planet -->
<circle cx="150" cy="150" r="50" fill="url(#planetGradient)" />
<!-- Planet details - craters or surface features -->
<circle cx="130" cy="140" r="10" fill="#6a1b9a" opacity="0.6" />
<circle cx="170" cy="160" r="12" fill="#6a1b9a" opacity="0.6" />
<circle cx="155" cy="130" r="8" fill="#6a1b9a" opacity="0.6" />
<circle cx="135" cy="170" r="9" fill="#6a1b9a" opacity="0.6" />
<!-- Planet rings -->
<ellipse cx="150" cy="150" rx="75" ry="18" fill="none" stroke="#a359ff" stroke-width="2" transform="rotate(-20 150 150)" />
<ellipse cx="150" cy="150" rx="70" ry="13" fill="none" stroke="#8733ff" stroke-width="1.5" transform="rotate(-20 150 150)" />
<!-- Planet tiny hat -->
<g>
<!-- Hat base -->
<path d="M140,100 L135,110 L165,110 L160,100 Z" fill="#ff4d4d" />
<!-- Hat top -->
<path d="M140,100 L160,100 C160,100 150,90 140,100 Z" fill="#ff4d4d" />
<!-- Hat decoration -->
<circle cx="150" cy="95" r="3" fill="#ffcc00" />
<!-- Ribbon -->
<path d="M165,110 L170,115" stroke="url(#ribbonGradient)" stroke-width="2" />
<path d="M170,115 Q173,116 175,114" stroke="url(#ribbonGradient)" stroke-width="2" fill="none" />
</g>
<!-- Additional space elements - comets or shooting stars -->
<g>
<path d="M280,30 L260,50" stroke="white" stroke-width="1">
<animate attributeName="opacity" values="0;1;0" dur="3s" repeatCount="indefinite" begin="1s" />
</path>
<path d="M30,200 L50,220" stroke="white" stroke-width="1">
<animate attributeName="opacity" values="0;1;0" dur="4s" repeatCount="indefinite" begin="2s" />
</path>
<path d="M220,270 L240,250" stroke="white" stroke-width="1">
<animate attributeName="opacity" values="0;1;0" dur="5s" repeatCount="indefinite" begin="0.5s" />
</path>
</g>
<!-- Giraffe with jetpack - orbiting animation -->
<g>
<!-- Animation along orbit -->
<animateTransform
attributeName="transform"
type="rotate"
from="0 150 150"
to="360 150 150"
dur="20s"
repeatCount="indefinite" />
<!-- Giraffe group positioned at orbit distance -->
<g transform="translate(250, 150) scale(0.5)">
<!-- Jetpack -->
<rect x="8" y="-5" width="20" height="30" rx="5" ry="5" fill="url(#metalGradient)" stroke="#990000" stroke-width="1" />
<rect x="11" y="-10" width="14" height="5" rx="2" ry="2" fill="url(#metalGradient)" stroke="#990000" stroke-width="1" />
<circle cx="18" cy="10" r="5" fill="#ff9900" stroke="#990000" stroke-width="1" />
<circle cx="18" cy="10" r="2" fill="#ffcc00" />
<rect x="15" y="0" width="6" height="2" fill="#990000" />
<rect x="15" y="5" width="6" height="2" fill="#990000" />
<rect x="15" y="15" width="6" height="2" fill="#990000" />
<!-- Fuel tank detail -->
<ellipse cx="18" cy="-2" rx="8" ry="3" fill="none" stroke="#990000" stroke-width="0.5" />
<!-- Jetpack straps -->
<path d="M8,-5 Q-5,-10 -5,-20" fill="none" stroke="#990000" stroke-width="2" />
<path d="M8,-5 Q0,-20 -5,-30" fill="none" stroke="#990000" stroke-width="2" />
<!-- Jetpack flames with glow effect -->
<path d="M18,25 Q13,35 16,45 Q21,40 23,45 Q25,40 30,45 Q33,38 38,45 Q41,35 43,25 Z" fill="url(#flameGradient)" filter="url(#glow)">
<animate attributeName="d"
values="M18,25 Q13,35 16,45 Q21,40 23,45 Q25,40 30,45 Q33,38 38,45 Q41,35 43,25 Z;
M18,25 Q13,40 16,50 Q21,45 23,50 Q25,45 30,50 Q33,43 38,50 Q41,40 43,25 Z;
M18,25 Q13,35 16,45 Q21,40 23,45 Q25,40 30,45 Q33,38 38,45 Q41,35 43,25 Z"
dur="0.5s"
repeatCount="indefinite" />
</path>
<!-- Giraffe body -->
<path d="M0,0 Q-10,-30 -5,-60 Q-3,-75 0,-80 Q3,-85 5,-80 Q8,-75 6,-60 Q3,-30 10,0 Z" fill="#ffcc66" stroke="#b25800" stroke-width="1" />
<path d="M0,0 Q-10,-30 -5,-60 Q-3,-75 0,-80 Q3,-85 5,-80 Q8,-75 6,-60 Q3,-30 10,0 Z" fill="url(#giraffePattern)" fill-opacity="0.6" />
<!-- Giraffe head -->
<ellipse cx="0" cy="-85" rx="10" ry="15" fill="#ffcc66" stroke="#b25800" stroke-width="1" transform="rotate(10 0 -85)" />
<path d="M-2,-95 L-8,-97 L-6,-100 Z" fill="#b25800" /> <!-- Horn 1 -->
<path d="M4,-96 L10,-99 L8,-102 Z" fill="#b25800" /> <!-- Horn 2 -->
<circle cx="-5" cy="-88" r="2.5" fill="#000000" /> <!-- Eye -->
<circle cx="-6" cy="-89" r="0.8" fill="white" /> <!-- Eye highlight -->
<path d="M0,-82 Q-3,-78 -7,-82" fill="none" stroke="#b25800" stroke-width="1" /> <!-- Mouth -->
<!-- Giraffe legs -->
<path d="M0,0 L-5,30" stroke="#ffcc66" stroke-width="5" stroke-linecap="round" />
<path d="M10,0 L15,30" stroke="#ffcc66" stroke-width="5" stroke-linecap="round" />
<path d="M-5,30 L-10,35" stroke="#ffcc66" stroke-width="5" stroke-linecap="round" /> <!-- Foot -->
<path d="M15,30 L20,35" stroke="#ffcc66" stroke-width="5" stroke-linecap="round" /> <!-- Foot -->
<!-- Space helmet (bubble) -->
<circle cx="0" cy="-85" r="25" fill="none" stroke="#add8e6" stroke-width="1.5" opacity="0.7" />
<ellipse cx="12" cy="-90" rx="7" ry="5" fill="white" opacity="0.3" /> <!-- Reflection -->
<!-- Counter-rotation to keep giraffe upright and facing the right direction -->
<animateTransform
attributeName="transform"
type="rotate"
from="0 0 0"
to="-360 0 0"
dur="20s"
repeatCount="indefinite" />
</g>
</g>
</svg>
Judge's Analysis
Player 1's image creatively captures the concept with a clear depiction of the giraffe and jetpack, and the planet is adorned with a tiny hat, closely adhering to the prompt.
The composition is balanced and visually appealing, with a clear orbit path.
Player 2's image, while technically proficient, lacks the same clarity in depicting the giraffe and jetpack, making it less immediately recognizable within the context of 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
"Robot octopus making coffee, steampunk style"
"Galactic snail with a spiral galaxy shell, in vibrant pop art style"
"Surreal clock with hands as rainbow-colored vines twisting around the numbers"
"Surreal clock melting over a floating iceberg in a purple sky"
"Giraffe wearing a spacesuit, floating with balloons above a surreal desert"
"A giraffe in a tuxedo, sipping tea at a cosmic garden party"