Creative Challenge
"A cactus wearing a bowtie and sunglasses in the desert"
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
<defs>
<radialGradient id="sunGradient" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
<stop offset="0%" style="stop-color:rgb(255,255,174);stop-opacity:1" />
<stop offset="100%" style="stop-color:rgb(255,207,64);stop-opacity:0" />
</radialGradient>
<linearGradient id="cactusGradient" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" style="stop-color:rgb(118,184,109);stop-opacity:1" />
<stop offset="100%" style="stop-color:rgb(70,130,70);stop-opacity:1" />
</linearGradient>
<pattern id="sandPattern" x="0" y="0" width="10" height="10" patternUnits="userSpaceOnUse">
<circle cx="2" cy="2" r="2" style="fill:rgb(227,190,125);" />
</pattern>
</defs>
<!-- Sky -->
<rect x="0" y="0" width="300" height="150" fill="skyblue"/>
<!-- Sun -->
<circle cx="250" cy="50" r="35" fill="url(#sunGradient)" />
<!-- Sand -->
<rect x="0" y="150" width="300" height="150" fill="url(#sandPattern)" />
<!-- Cactus body -->
<path d="M150 270 Q145 230 150 200 Q147 180 142 160 Q140 150 150 150
Q160 150 158 160 Q153 180 150 200 Q155 230 150 270 Z"
fill="url(#cactusGradient)" stroke="darkgreen" stroke-width="2"/>
<!-- Cactus arms -->
<!-- Left Arm -->
<path d="M145 190 Q135 190 125 180 Q115 170 125 160 Q135 150 145 150"
fill="url(#cactusGradient)" stroke="darkgreen" stroke-width="2"/>
<!-- Right Arm -->
<path d="M155 190 Q165 190 175 180 Q185 170 175 160 Q165 150 155 150"
fill="url(#cactusGradient)" stroke="darkgreen" stroke-width="2"/>
<!-- Sunglasses -->
<rect x="135" y="135" width="30" height="10" fill="black" stroke="darkgray" stroke-width="2" />
<rect x="155" y="135" width="30" height="10" fill="black" stroke="darkgray" stroke-width="2" />
<line x1="165" y1="140" x2="170" y2="140" stroke="darkgray" stroke-width="2" />
<!-- Bowtie -->
<path d="M135 200
Q130 190 125 200
Q130 210 135 200 Z" fill="red" stroke="darkred" stroke-width="2"/>
<rect x="146" y="196" width="8" height="8" fill="red" stroke="darkred" stroke-width="2"/>
<path d="M165 200
Q170 190 175 200
Q170 210 165 200 Z" fill="red" stroke="darkred" stroke-width="2"/>
<!-- Highlights -->
<defs>
<filter id="blur" x="-20%" y="-20%" width="140%" height="140%">
<feGaussianBlur stdDeviation="1" />
</filter>
</defs>
<line x1="150" y1="155" x2="150" y2="195" stroke="lightgreen" stroke-width="1.5" filter="url(#blur)" />
<circle cx="145" cy="157" r="1.5" fill="lightgreen" filter="url(#blur)" />
<circle cx="155" cy="207" r="1.5" fill="lightgreen" filter="url(#blur)" />
</svg>
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
<!-- Desert background with gradient sky -->
<defs>
<linearGradient id="skyGradient" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#5D9EFF" />
<stop offset="100%" stop-color="#FFB86C" />
</linearGradient>
<linearGradient id="sandGradient" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#E8C07D" />
<stop offset="100%" stop-color="#D4A76A" />
</linearGradient>
<linearGradient id="cactusGradient" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#36A14A" />
<stop offset="100%" stop-color="#2D7D4D" />
</linearGradient>
<filter id="sunGlow" x="-50%" y="-50%" width="200%" height="200%">
<feGaussianBlur stdDeviation="4" result="blur" />
<feComposite in="SourceGraphic" in2="blur" operator="over" />
</filter>
<pattern id="sandPattern" width="10" height="10" patternUnits="userSpaceOnUse">
<circle cx="5" cy="5" r="0.5" fill="#C19A6B" />
</pattern>
</defs>
<!-- Sky background -->
<rect x="0" y="0" width="300" height="200" fill="url(#skyGradient)" />
<!-- Sun -->
<circle cx="240" cy="50" r="25" fill="#FFE87C" filter="url(#sunGlow)" />
<!-- Desert ground -->
<rect x="0" y="200" width="300" height="100" fill="url(#sandGradient)" />
<rect x="0" y="200" width="300" height="100" fill="url(#sandPattern)" fill-opacity="0.3" />
<!-- Distant mountains -->
<polygon points="0,200 30,170 60,190 90,160 120,180 150,165 180,190 210,170 240,185 270,165 300,200" fill="#C19A6B" />
<!-- Main cactus body -->
<path d="M150,250 Q150,130 150,100 Q150,80 150,80 C150,65 165,65 165,80 L165,110 C165,110 180,110 180,125 L180,160 C180,160 195,160 195,175 L195,250 Z" fill="url(#cactusGradient)" />
<!-- Left cactus arm -->
<path d="M150,170 L120,170 L120,140 C120,125 135,125 135,140 L135,155 L150,155 Z" fill="url(#cactusGradient)" />
<!-- Right cactus arm -->
<path d="M180,190 L210,190 L210,160 C210,145 195,145 195,160 L195,175 L180,175 Z" fill="url(#cactusGradient)" />
<!-- Cactus spikes -->
<g fill="#D4D4D4">
<!-- Left side spikes -->
<line x1="145" y1="100" x2="135" y2="95" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="145" y1="120" x2="135" y2="115" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="145" y1="140" x2="135" y2="135" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="145" y1="160" x2="135" y2="155" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="145" y1="180" x2="135" y2="175" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="145" y1="200" x2="135" y2="195" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="145" y1="220" x2="135" y2="215" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="145" y1="240" x2="135" y2="235" stroke="#D4D4D4" stroke-width="1.5" />
<!-- Right side spikes -->
<line x1="155" y1="100" x2="165" y2="95" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="155" y1="120" x2="165" y2="115" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="155" y1="140" x2="165" y2="135" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="175" y1="140" x2="185" y2="135" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="175" y1="160" x2="185" y2="155" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="175" y1="180" x2="185" y2="175" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="175" y1="200" x2="185" y2="195" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="175" y1="220" x2="185" y2="215" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="175" y1="240" x2="185" y2="235" stroke="#D4D4D4" stroke-width="1.5" />
<!-- Arm spikes -->
<line x1="120" y1="160" x2="115" y2="150" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="130" y1="170" x2="125" y2="180" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="200" y1="190" x2="195" y2="200" stroke="#D4D4D4" stroke-width="1.5" />
<line x1="210" y1="180" x2="220" y2="175" stroke="#D4D4D4" stroke-width="1.5" />
</g>
<!-- Bowtie -->
<path d="M150,110 L135,100 L135,120 Z" fill="#FF5555" />
<path d="M150,110 L165,100 L165,120 Z" fill="#FF5555" />
<circle cx="150" cy="110" r="5" fill="#FFDD00" />
<!-- Sunglasses -->
<rect x="130" y="85" width="40" height="10" rx="2" fill="#111111" />
<path d="M130,90 C130,95 135,100 145,100 C155,100 160,95 160,90" fill="none" stroke="#111111" stroke-width="3" />
<rect x="130" y="90" width="15" height="10" rx="5" fill="#111111" />
<rect x="155" y="90" width="15" height="10" rx="5" fill="#111111" />
<!-- Cactus flowers -->
<g transform="translate(135, 90)">
<circle cx="0" cy="0" r="3" fill="#FF9EAA" />
<circle cx="0" cy="-3" r="2" fill="#FF6B99" />
<circle cx="3" cy="0" r="2" fill="#FF6B99" />
<circle cx="0" cy="3" r="2" fill="#FF6B99" />
<circle cx="-3" cy="0" r="2" fill="#FF6B99" />
</g>
<g transform="translate(195, 165)">
<circle cx="0" cy="0" r="3" fill="#FF9EAA" />
<circle cx="0" cy="-3" r="2" fill="#FF6B99" />
<circle cx="3" cy="0" r="2" fill="#FF6B99" />
<circle cx="0" cy="3" r="2" fill="#FF6B99" />
<circle cx="-3" cy="0" r="2" fill="#FF6B99" />
</g>
<g transform="translate(125, 155)">
<circle cx="0" cy="0" r="3" fill="#FF9EAA" />
<circle cx="0" cy="-3" r="2" fill="#FF6B99" />
<circle cx="3" cy="0" r="2" fill="#FF6B99" />
<circle cx="0" cy="3" r="2" fill="#FF6B99" />
<circle cx="-3" cy="0" r="2" fill="#FF6B99" />
</g>
<!-- Cactus smile -->
<path d="M145,95 C148,98 152,98 155,95" fill="none" stroke="#111111" stroke-width="1" stroke-linecap="round" />
</svg>
Judge's Analysis
Player 2's image better adheres to the prompt with a clear depiction of a cactus wearing sunglasses and a bowtie in a desert setting.
The composition includes additional elements like a gradient sky and mountains, enhancing visual appeal and creativity.
Player 1's image lacks clarity in the depiction of the cactus and desert, resulting in a less engaging presentation.
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"