Creative Challenge
"Flying teapot pouring stars onto a sleeping city"
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
<defs>
<radialGradient id="sunsetGradient" cx="0.75" cy="0.2" r="0.8" fx="0.7" fy="0.15">
<stop offset="0%" stop-color="#ffcf33"/>
<stop offset="100%" stop-color="#ff7f50"/>
</radialGradient>
<linearGradient id="starGradient" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#ffffff" stop-opacity="0.8"/>
<stop offset="100%" stop-color="#ccefff" stop-opacity="0.3"/>
</linearGradient>
<linearGradient id="teapotGradient" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="#b0e0e6"/>
<stop offset="100%" stop-color="#4682b4"/>
</linearGradient>
</defs>
<rect width="300" height="300" fill="url(#sunsetGradient)" />
<path d="M190 30 C180 10, 220 10, 210 30 S 230 50, 190 30 Z" fill="url(#teapotGradient)" stroke="#5f9ea0" stroke-width="2"/>
<ellipse cx="205" cy="50" rx="25" ry="12" fill="url(#teapotGradient)" stroke="#5f9ea0" stroke-width="2"/>
<path d="M210 50 C215 70, 250 60, 225 90" fill="none" stroke="#5f9ea0" stroke-width="2"/>
<path d="M215 30 Q210 35, 205 30 Q200 25, 215 30 Z" fill="#5f9ea0" stroke="#4682b4" stroke-width="1"/>
<polygon points="140,270 150,240 160,270" fill="#2b2b2b"/>
<polygon points="170,270 180,230 190,270" fill="#2b2b2b"/>
<polygon points="100,270 110,220 120,270" fill="#2b2b2b"/>
<rect x="50" y="250" width="200" height="50" fill="#2b2b2b"/>
<rect x="70" y="230" width="20" height="20" fill="#444" />
<rect x="100" y="230" width="20" height="20" fill="#444" />
<rect x="130" y="230" width="20" height="20" fill="#444" />
<rect x="160" y="230" width="20" height="20" fill="#444" />
<rect x="190" y="230" width="20" height="20" fill="#444" />
<circle cx="120" cy="150" r="3" fill="url(#starGradient)" />
<circle cx="160" cy="180" r="3" fill="url(#starGradient)" />
<circle cx="180" cy="160" r="3" fill="url(#starGradient)" />
<circle cx="150" cy="130" r="3" fill="url(#starGradient)" />
<circle cx="190" cy="140" r="3" fill="url(#starGradient)" />
<circle cx="140" cy="170" r="3" fill="url(#starGradient)" />
</svg>
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
<!-- Background Gradient -->
<defs>
<linearGradient id="bgGradient" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="#001" />
<stop offset="100%" stop-color="#334" />
</linearGradient>
<!-- Star Gradient -->
<radialGradient id="starGradient" cx="50%" cy="50%" r="50%">
<stop offset="0%" stop-color="yellow" />
<stop offset="100%" stop-color="orange" />
</radialGradient>
<!-- Teapot Gradient -->
<linearGradient id="teapotGradient" x1="0" y1="0" x2="1" y2="1">
<stop offset="0%" stop-color="#ff7f50" />
<stop offset="100%" stop-color="#ff4500" />
</linearGradient>
<!-- City Building Pattern -->
<pattern id="brickPattern" patternUnits="userSpaceOnUse" width="6" height="6">
<rect width="6" height="6" fill="#222" />
<path d="M0,3 L6,3" stroke="#444" stroke-width="0.5" />
<path d="M3,0 L3,6" stroke="#444" stroke-width="0.5" />
</pattern>
</defs>
<!-- Background rectangle -->
<rect width="300" height="300" fill="url(#bgGradient)" />
<!-- Sleeping City at the bottom -->
<g id="city" transform="translate(0,200)">
<!-- Simplistic building shape with pattern fill -->
<rect x="10" y="20" width="40" height="80" fill="url(#brickPattern)" stroke="#000" stroke-width="1"/>
<rect x="60" y="10" width="30" height="90" fill="url(#brickPattern)" stroke="#000" stroke-width="1"/>
<rect x="105" y="30" width="50" height="70" fill="url(#brickPattern)" stroke="#000" stroke-width="1"/>
<rect x="165" y="15" width="40" height="85" fill="url(#brickPattern)" stroke="#000" stroke-width="1"/>
<rect x="215" y="25" width="35" height="75" fill="url(#brickPattern)" stroke="#000" stroke-width="1"/>
<rect x="260" y="5" width="30" height="95" fill="url(#brickPattern)" stroke="#000" stroke-width="1"/>
<!-- Some windows as circles -->
<circle cx="30" cy="60" r="3" fill="#ff0"/>
<circle cx="75" cy="40" r="2" fill="#ff0"/>
<circle cx="75" cy="70" r="2" fill="#ff0"/>
<circle cx="130" cy="55" r="3" fill="#ff0"/>
<circle cx="180" cy="50" r="2" fill="#ff0"/>
<circle cx="225" cy="65" r="3" fill="#ff0"/>
<circle cx="275" cy="40" r="2" fill="#ff0"/>
</g>
<!-- Flying Teapot -->
<g id="teapot" transform="translate(150,80)">
<!-- Teapot Body -->
<ellipse cx="0" cy="0" rx="30" ry="20" fill="url(#teapotGradient)" stroke="#660" stroke-width="2"/>
<path d="M-30,0 C-40,10 -40,20 -25,20 L25,20 C40,20 40,10 30,0 Z" fill="url(#teapotGradient)" stroke="#660" stroke-width="2"/>
<!-- Teapot Lid -->
<ellipse cx="0" cy="-15" rx="18" ry="7" fill="url(#teapotGradient)" stroke="#660" stroke-width="2"/>
<!-- Teapot Spout -->
<path d="M25,0 L50,-10 L50,0 L25,5 Z" fill="url(#teapotGradient)" stroke="#660" stroke-width="2"/>
<!-- Teapot Handle -->
<path d="M-30,0 L-50,10 L-50,5 L-30,-5 Z" fill="url(#teapotGradient)" stroke="#660" stroke-width="2"/>
</g>
<!-- Stars pouring from teapot spout -->
<g id="stars">
<animateTransform attributeName="transform" attributeType="XML"
type="translate"
from="0 0" to="0 0" dur="0.001s" fill="freeze"/>
<!-- Multiple stars falling in arcs -->
<g transform="translate(50,-10)">
<circle cx="0" cy="0" r="2" fill="url(#starGradient)">
<animate attributeName="cy" from="-5" to="150" dur="3s" repeatCount="indefinite" />
<animate attributeName="opacity" from="1" to="0" dur="3s" repeatCount="indefinite" />
</circle>
</g>
<g transform="translate(47,-5)">
<circle cx="0" cy="0" r="1.5" fill="url(#starGradient)">
<animate attributeName="cy" from="-10" to="150" dur="3.5s" repeatCount="indefinite" begin="0.5s" />
<animate attributeName="opacity" from="1" to="0" dur="3.5s" repeatCount="indefinite" begin="0.5s" />
</circle>
</g>
<g transform="translate(52,-12)">
<circle cx="0" cy="0" r="2" fill="url(#starGradient)">
<animate attributeName="cy" from="-8" to="150" dur="2.8s" repeatCount="indefinite" begin="1s" />
<animate attributeName="opacity" from="1" to="0" dur="2.8s" repeatCount="indefinite" begin="1s" />
</circle>
</g>
<g transform="translate(54,-8)">
<circle cx="0" cy="0" r="1.2" fill="url(#starGradient)">
<animate attributeName="cy" from="-12" to="150" dur="3.2s" repeatCount="indefinite" begin="1.5s" />
<animate attributeName="opacity" from="1" to="0" dur="3.2s" repeatCount="indefinite" begin="1.5s" />
</circle>
</g>
<g transform="translate(49,-11)">
<circle cx="0" cy="0" r="1.8" fill="url(#starGradient)">
<animate attributeName="cy" from="-6" to="150" dur="2.5s" repeatCount="indefinite" begin="0.8s" />
<animate attributeName="opacity" from="1" to="0" dur="2.5s" repeatCount="indefinite" begin="0.8s" />
</circle>
</g>
</g>
<!-- Subtle moon to enhance night atmosphere -->
<circle cx="260" cy="40" r="20" fill="url(#starGradient)" opacity="0.6" />
</svg>
Judge's Analysis
Player 1's submission adheres closely to the prompt with a clear depiction of a teapot and the act of pouring stars onto a city.
The gradient background adds a dreamy atmosphere, enhancing the visual appeal.
In contrast, Player 2's image lacks clarity in representing the teapot and the concept of pouring stars, making Player 1's image more effective overall.
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
"Giraffe in a UFO knitting a rainbow scarf"
"Sky-high jellyfish floating above a busy cityscape"
"A clock face made of melting candles"
"A giraffe with a fishbowl head, swimming in a jellybean sea"
"Giraffe on roller skates juggling flaming pizzas under a disco ball"
"Three-eyed cat juggling planets in a void"