Creative Challenge
"Floating satellite, giant lollipop orbiting, candy wrapper background"
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
<defs>
<radialGradient id="lollipopGradient" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
<stop offset="0%" style="stop-color:#ff69b4;stop-opacity:1" />
<stop offset="100%" style="stop-color:#ff1493;stop-opacity:1" />
</radialGradient>
<pattern id="candyWrapperPattern" x="0" y="0" width="20" height="20" patternUnits="userSpaceOnUse">
<rect x="0" y="0" width="20" height="20" fill="#ffe4e1" />
<polygon points="0,0 10,0 10,10 0,10" fill="#ffa07a" />
<polygon points="10,10 20,10 20,20 10,20" fill="#ffa07a" />
</pattern>
<linearGradient id="satelliteGradient" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#87ceeb;stop-opacity:1" />
<stop offset="100%" style="stop-color:#4682b4;stop-opacity:1" />
</linearGradient>
</defs>
<rect width="300" height="300" fill="url(#candyWrapperPattern)" />
<circle cx="150" cy="150" r="40" fill="url(#lollipopGradient)" stroke="white" stroke-width="4" />
<rect x="145" y="190" width="10" height="50" fill="url(#lollipopGradient)" />
<g transform="rotate(30 150 150)">
<path d="M140 140 L160 140 L155 120 L145 120 Z" fill="url(#satelliteGradient)" />
<rect x="138" y="140" width="24" height="5" fill="gray" />
<polygon points="135,140 165,140 150,155" fill="#dcdcdc" />
</g>
<path d="M191,109 A40,40 0 1,0 150,190" fill="none" stroke="#ff69b4" stroke-width="2" stroke-dasharray="5,5" />
</svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300">
<!-- Background - Candy Wrapper Pattern -->
<defs>
<pattern id="candyPattern" patternUnits="userSpaceOnUse" width="60" height="60" patternTransform="rotate(15)">
<path d="M0 0h30v30H0z" fill="#FF9EE4" />
<path d="M30 0h30v30H30z" fill="#FFD1F5" />
<path d="M0 30h30v30H0z" fill="#F5BAFF" />
<path d="M30 30h30v30H30z" fill="#FFA7D1" />
<path d="M15 15l10 10M45 15l10 10M15 45l10 10M45 45l10 10" stroke="#FFFFFF" stroke-width="2" stroke-linecap="round" />
</pattern>
<radialGradient id="orbitGlow" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
<stop offset="0%" stop-color="rgba(255,255,255,0.8)" />
<stop offset="100%" stop-color="rgba(255,255,255,0)" />
</radialGradient>
<linearGradient id="lollipopGradient" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#FF5BA0" />
<stop offset="50%" stop-color="#FF86C1" />
<stop offset="100%" stop-color="#FF46A3" />
</linearGradient>
<linearGradient id="stickGradient" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="#F9E0B8" />
<stop offset="50%" stop-color="#FFEFD5" />
<stop offset="100%" stop-color="#F9E0B8" />
</linearGradient>
<linearGradient id="satelliteBody" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#B6D1FF" />
<stop offset="100%" stop-color="#5E8DF9" />
</linearGradient>
<filter id="glow" x="-20%" y="-20%" width="140%" height="140%">
<feGaussianBlur stdDeviation="4" result="blur" />
<feComposite in="SourceGraphic" in2="blur" operator="over" />
</filter>
</defs>
<!-- Candy Wrapper Background -->
<rect x="0" y="0" width="300" height="300" fill="url(#candyPattern)" />
<!-- Orbit Glow -->
<circle cx="150" cy="150" r="120" fill="url(#orbitGlow)" />
<!-- Orbit Path -->
<circle cx="150" cy="150" r="110" fill="none" stroke="#FFFFFF" stroke-width="1.5" stroke-dasharray="4 4" />
<!-- Giant Lollipop -->
<g transform="translate(220 120) rotate(15)">
<!-- Stick -->
<rect x="-5" y="30" width="10" height="100" rx="4" fill="url(#stickGradient)" stroke="#E0C9A6" stroke-width="1" />
<!-- Candy -->
<circle cx="0" cy="0" r="30" fill="url(#lollipopGradient)" filter="url(#glow)" />
<!-- Swirl Pattern -->
<path d="M0 0 A15 15 0 0 1 15 15 A15 15 0 0 1 0 30 A15 15 0 0 1 -15 15 A15 15 0 0 1 0 0" fill="none" stroke="#FFFFFF" stroke-width="3" />
<!-- Shine -->
<circle cx="-10" cy="-10" r="6" fill="rgba(255,255,255,0.7)" />
</g>
<!-- Satellite -->
<g transform="translate(110 180)">
<!-- Main Body -->
<rect x="-25" y="-15" width="50" height="30" rx="5" fill="url(#satelliteBody)" stroke="#3D56B2" stroke-width="1.5" />
<!-- Solar Panels -->
<g transform="rotate(-15)">
<rect x="25" y="-20" width="40" height="40" fill="#4169E1" stroke="#3D56B2" stroke-width="1" />
<line x1="25" y1="-10" x2="65" y2="-10" stroke="#3D56B2" stroke-width="1" />
<line x1="25" y1="0" x2="65" y2="0" stroke="#3D56B2" stroke-width="1" />
<line x1="25" y1="10" x2="65" y2="10" stroke="#3D56B2" stroke-width="1" />
<line x1="35" y1="-20" x2="35" y2="20" stroke="#3D56B2" stroke-width="1" />
<line x1="45" y1="-20" x2="45" y2="20" stroke="#3D56B2" stroke-width="1" />
<line x1="55" y1="-20" x2="55" y2="20" stroke="#3D56B2" stroke-width="1" />
</g>
<g transform="rotate(15)">
<rect x="-65" y="-20" width="40" height="40" fill="#4169E1" stroke="#3D56B2" stroke-width="1" />
<line x1="-65" y1="-10" x2="-25" y2="-10" stroke="#3D56B2" stroke-width="1" />
<line x1="-65" y1="0" x2="-25" y2="0" stroke="#3D56B2" stroke-width="1" />
<line x1="-65" y1="10" x2="-25" y2="10" stroke="#3D56B2" stroke-width="1" />
<line x1="-55" y1="-20" x2="-55" y2="20" stroke="#3D56B2" stroke-width="1" />
<line x1="-45" y1="-20" x2="-45" y2="20" stroke="#3D56B2" stroke-width="1" />
<line x1="-35" y1="-20" x2="-35" y2="20" stroke="#3D56B2" stroke-width="1" />
</g>
<!-- Antenna -->
<line x1="0" y1="-15" x2="0" y2="-35" stroke="#3D56B2" stroke-width="2" />
<circle cx="0" cy="-35" r="5" fill="#F8F8FF" stroke="#3D56B2" stroke-width="1" />
<!-- Radar Dish -->
<g transform="translate(-20, -20) rotate(-30)">
<ellipse cx="0" cy="0" rx="10" ry="8" fill="#F8F8FF" stroke="#3D56B2" stroke-width="1" />
<line x1="0" y1="0" x2="-5" y2="10" stroke="#3D56B2" stroke-width="1.5" />
</g>
<!-- Lights -->
<circle cx="15" cy="-5" r="3" fill="#FF5E5E" filter="url(#glow)" />
<circle cx="-15" cy="-5" r="3" fill="#5EFF5E" filter="url(#glow)" />
<!-- Thrusters -->
<rect x="-15" y="15" width="8" height="6" fill="#3D56B2" />
<rect x="7" y="15" width="8" height="6" fill="#3D56B2" />
<path d="M-15 21 l4 8 l-8 0 z" fill="#6FA0FF" filter="url(#glow)" />
<path d="M15 21 l-4 8 l8 0 z" fill="#6FA0FF" filter="url(#glow)" />
</g>
<!-- Sparkles -->
<g filter="url(#glow)">
<circle cx="50" cy="75" r="2" fill="white" />
<circle cx="240" cy="220" r="2" fill="white" />
<circle cx="280" cy="80" r="2" fill="white" />
<circle cx="30" cy="220" r="2" fill="white" />
<circle cx="150" cy="30" r="2" fill="white" />
<path d="M70 130 l5 0 l-5 5 l5 0 l-5 5" stroke="white" stroke-width="1" />
<path d="M250 150 l5 0 l-5 5 l5 0 l-5 5" stroke="white" stroke-width="1" />
</g>
<!-- Small Candy Pieces Floating -->
<circle cx="60" cy="180" r="6" fill="#FF86C1" stroke="#FFFFFF" stroke-width="1" />
<circle cx="210" cy="60" r="8" fill="#F5BAFF" stroke="#FFFFFF" stroke-width="1" />
<circle cx="190" cy="230" r="7" fill="#FFA7D1" stroke="#FFFFFF" stroke-width="1" />
</svg>
Judge's Analysis
Player 2's submission creatively integrates the elements of a floating satellite and a giant lollipop within a vibrant candy wrapper background, closely adhering to the prompt.
The composition is dynamic, with a clear visual interplay between the satellite and the lollipop, and the background adds visual interest.
In contrast, Player 1's simpler design lacks the complexity and thematic integration seen in Player 2's work.
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
"Cactus wearing sunglasses and a sombrero in a desert sunset"
"A tree with roots as legs dancing in a grassy meadow"
"Astronaut disco dancing with a robot on the moon"
"An ice cream cone floating in space with rings like Saturn"
"An octopus playing a grand piano in a moonlit ocean concert"
"Surreal fruit sailing a sea of chocolate milk under a checkerboard sky"