BuseyBench SVG Test
Generated by StepFun on Jul 2, 2026 using prompt svg-v1-no-web.
2.8/10 overall
Scored by 3 vision models (claude-sonnet-4.6, gpt-5.2, gemini-3.1-pro-preview), 3 samples each, rubric rubric-v1. Overall = likeness 35% + face 25% + aesthetics 25% + prompt 15%.
Create a standalone SVG portrait of Gary Busey's face. Output only valid SVG markup. Do not wrap the SVG in Markdown fences. Do not use external images, links, scripts, CSS imports, or remote assets. Make the portrait recognizable as Gary Busey using vector shapes only. Include face shape, hair, eyes, eyebrows, nose, mouth, teeth, and expressive features. Use a 1024 by 1024 viewBox. Use detailed SVG-native vector techniques: layered paths, gradients, masks, clipping paths, shadows, highlights, blur filters, opacity, and fine strokes. The portrait should be as recognizable and detailed as possible.
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" width="1024" height="1024">
<defs>
<!-- Background gradient -->
<linearGradient id="bgGrad" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#f0f0f0"/>
<stop offset="100%" stop-color="#d9d9d9"/>
</linearGradient>
<!-- Skin gradient for face -->
<radialGradient id="skinGrad" cx="50%" cy="40%" r="60%" fx="50%" fy="40%">
<stop offset="0%" stop-color="#e8c4a0"/>
<stop offset="70%" stop-color="#d4a574"/>
<stop offset="100%" stop-color="#b8835a"/>
</radialGradient>
<!-- Hair gradient -->
<linearGradient id="hairGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#5a5a5a"/>
<stop offset="50%" stop-color="#3a3a3a"/>
<stop offset="100%" stop-color="#1a1a1a"/>
</linearGradient>
<!-- Hair highlight gradient -->
<linearGradient id="hairHighlight" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#8a8a8a" stop-opacity="0.6"/>
<stop offset="100%" stop-color="#3a3a3a" stop-opacity="0"/>
</linearGradient>
<!-- Eye gradient -->
<radialGradient id="eyeGrad" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
<stop offset="0%" stop-color="#4a3c2e"/>
<stop offset="100%" stop-color="#2a1c0e"/>
</radialGradient>
<!-- Eyebrow gradient -->
<linearGradient id="browGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#4a3c2e"/>
<stop offset="100%" stop-color="#2a1c0e"/>
</linearGradient>
<!-- Nose gradient -->
<linearGradient id="noseGrad" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#d4a574" stop-opacity="0.9"/>
<stop offset="100%" stop-color="#b8835a" stop-opacity="0.7"/>
</linearGradient>
<!-- Mouth gradient -->
<linearGradient id="mouthGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#a05a4a"/>
<stop offset="100%" stop-color="#804030"/>
</linearGradient>
<!-- Teeth gradient -->
<linearGradient id="teethGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#f5f5f5"/>
<stop offset="100%" stop-color="#e0e0e0"/>
</linearGradient>
<!-- Shadow filter -->
<filter id="shadow" x="-50%" y="-50%" width="200%" height="200%">
<feGaussianBlur in="SourceAlpha" stdDeviation="8" result="blur"/>
<feOffset in="blur" dx="4" dy="4" result="offsetBlur"/>
<feMerge>
<feMergeNode in="offsetBlur"/>
<feMergeNode in="SourceGraphic"/>
</feMerge>
</filter>
<!-- Skin texture filter -->
<filter id="skinTexture">
<feTurbulence type="fractalNoise" baseFrequency="0.02" numOctaves="3" result="noise"/>
<feColorMatrix in="noise" type="saturate" values="0"/>
<feBlend in="SourceGraphic" in2="noise" mode="multiply" result="blend"/>
<feGaussianBlur in="blend" stdDeviation="0.5"/>
</filter>
<!-- Hair texture filter -->
<filter id="hairTexture">
<feTurbulence type="turbulence" baseFrequency="0.05" numOctaves="2" result="turbulence"/>
<feDisplacementMap in="SourceGraphic" in2="turbulence" scale="3" xChannelSelector="R" yChannelSelector="G"/>
</filter>
<!-- Clipping path for face -->
<clipPath id="faceClip">
<path d="M512,150 C600,150 680,200 720,280 C760,360 780,460 760,560 C740,660 680,740 600,780 C520,820 420,820 340,780 C260,740 200,660 180,560 C160,460 180,360 220,280 C260,200 340,150 440,150 C480,150 500,160 512,170 Z"/>
</clipPath>
</defs>
<!-- Background -->
<rect width="100%" height="100%" fill="url(#bgGrad)"/>
<!-- Face base -->
<g filter="url(#skinTexture)">
<path d="M512,150 C600,150 680,200 720,280 C760,360 780,460 760,560 C740,660 680,740 600,780 C520,820 420,820 340,780 C260,740 200,660 180,560 C160,460 180,360 220,280 C260,200 340,150 440,150 C480,150 500,160 512,170 Z"
fill="url(#skinGrad)" stroke="#b8835a" stroke-width="2"/>
</g>
<!-- Hair back layer -->
<g filter="url(#hairTexture)">
<path d="M340,200 C300,180 250,220 220,280 C200,340 210,420 250,480 C290,540 350,580 420,560 C490,540 550,500 580,440 C610,380 600,300 560,240 C540,210 490,190 440,190 C400,190 360,200 340,200 Z"
fill="url(#hairGrad)" opacity="0.9"/>
<path d="M680,200 C720,180 770,220 800,280 C820,340 810,420 770,480 C730,540 670,580 600,560 C530,540 470,500 440,440 C410,380 420,300 460,240 C480,210 530,190 580,190 C620,190 660,200 680,200 Z"
fill="url(#hairGrad)" opacity="0.9"/>
</g>
<!-- Hair middle layer -->
<g filter="url(#hairTexture)">
<path d="M380,120 C420,100 480,110 520,130 C560,150 580,190 570,240 C560,290 520,330 470,340 C420,350 370,330 340,280 C320,240 330,180 360,140 C370,125 375,120 380,120 Z"
fill="url(#hairGrad)" opacity="0.95"/>
<path d="M640,120 C600,100 540,110 500,130 C460,150 440,190 450,240 C460,290 500,330 550,340 C600,350 650,330 680,280 C700,240 690,180 660,140 C650,125 645,120 640,120 Z"
fill="url(#hairGrad)" opacity="0.95"/>
</g>
<!-- Hair front layer (wild strands) -->
<g filter="url(#hairTexture)">
<path d="M400,80 C430,60 470,70 500,100 C530,130 540,180 520,220 C500,260 460,280 420,270 C380,260 360,220 370,170 C380,130 400,100 400,80 Z"
fill="url(#hairGrad)" stroke="#2a1c0e" stroke-width="1" stroke-opacity="0.5"/>
<path d="M620,80 C590,60 550,70 520,100 C490,130 480,180 500,220 C520,260 560,280 600,270 C640,260 660,220 650,170 C640,130 620,100 620,80 Z"
fill="url(#hairGrad)" stroke="#2a1c0e" stroke-width="1" stroke-opacity="0.5"/>
<path d="M300,150 C280,130 260,150 250,200 C240,250 270,300 320,310 C370,320 420,300 440,250 C460,200 440,150 400,140 C360,130 320,150 300,150 Z"
fill="url(#hairGrad)" stroke="#2a1c0e" stroke-width="1" stroke-opacity="0.5"/>
<path d="M720,150 C740,130 760,150 770,200 C780,250 750,300 700,310 C650,320 600,300 580,250 C560,200 580,150 620,140 C660,130 700,150 720,150 Z"
fill="url(#hairGrad)" stroke="#2a1c0e" stroke-width="1" stroke-opacity="0.5"/>
</g>
<!-- Hair highlights -->
<g opacity="0.7">
<path d="M380,120 C420,100 480,110 520,130 C560,150 580,190 570,240 C560,290 520,330 470,340 C420,350 370,330 340,280 C320,240 330,180 360,140 C370,125 375,120 380,120 Z"
fill="url(#hairHighlight)"/>
<path d="M640,120 C600,100 540,110 500,130 C460,150 440,190 450,240 C460,290 500,330 550,340 C600,350 650,330 680,280 C700,240 690,180 660,140 C650,125 645,120 640,120 Z"
fill="url(#hairHighlight)"/>
</g>
<!-- Left eyebrow -->
<path d="M340,280 C360,260 400,250 440,260 C480,270 500,300 480,330 C460,360 420,370 380,360 C350,350 340,320 340,280 Z"
fill="url(#browGrad)" stroke="#2a1c0e" stroke-width="2" filter="url(#shadow)"/>
<!-- Right eyebrow -->
<path d="M680,280 C660,260 620,250 580,260 C540,270 520,300 540,330 C560,360 600,370 640,360 C670,350 680,320 680,280 Z"
fill="url(#browGrad)" stroke="#2a1c0e" stroke-width="2" filter="url(#shadow)"/>
<!-- Left eye -->
<ellipse cx="400" cy="340" rx="45" ry="25" fill="url(#eyeGrad)" stroke="#2a1c0e" stroke-width="2"/>
<ellipse cx="400" cy="340" rx="25" ry="12" fill="#000" opacity="0.8"/>
<ellipse cx="405" cy="335" rx="8" ry="5" fill="#fff" opacity="0.9"/>
<!-- Right eye -->
<ellipse cx="620" cy="340" rx="45" ry="25" fill="url(#eyeGrad)" stroke="#2a1c0e" stroke-width="2"/>
<ellipse cx="620" cy="340" rx="25" ry="12" fill="#000" opacity="0.8"/>
<ellipse cx="625" cy="335" rx="8" ry="5" fill="#fff" opacity="0.9"/>
<!-- Eye bags/shadow under eyes -->
<path d="M340,360 C370,370 430,370 460,360" fill="none" stroke="#b8835a" stroke-width="3" stroke-opacity="0.6"/>
<path d="M560,360 C590,370 650,370 680,360" fill="none" stroke="#b8835a" stroke-width="3" stroke-opacity="0.6"/>
<!-- Nose -->
<path d="M512,380 C480,400 460,440 470,480 C480,520 510,540 512,560 C514,540 540,520 550,480 C560,440 540,400 512,380 Z"
fill="url(#noseGrad)" stroke="#b8835a" stroke-width="2"/>
<path d="M490,440 C500,450 510,450 520,440" fill="none" stroke="#fff" stroke-width="1" stroke-opacity="0.5"/>
<!-- Nostrils -->
<ellipse cx="485" cy="500" rx="12" ry="6" fill="#5a3a2a" opacity="0.7"/>
<ellipse cx="535" cy="500" rx="12" ry="6" fill="#5a3a2a" opacity="0.7"/>
<!-- Mouth -->
<path d="M440,620 C480,610 540,610 580,620 C620,630 640,660 620,690 C600,720 550,730 512,720 C470,730 420,720 400,690 C380,660 400,630 440,620 Z"
fill="url(#mouthGrad)" stroke="#5a3a2a" stroke-width="2"/>
<!-- Teeth -->
<path d="M450,640 C470,635 550,635 570,640" fill="none" stroke="#fff" stroke-width="3"/>
<path d="M460,650 C480,645 540,645 560,650" fill="none" stroke="#fff" stroke-width="3"/>
<!-- Teeth highlights -->
<rect x="465" y="642" width="10" height="3" fill="url(#teethGrad)" opacity="0.8"/>
<rect x="545" y="642" width="10" height="3" fill="url(#teethGrad)" opacity="0.8"/>
<!-- Lips line -->
<path d="M440,620 C480,610 540,610 580,620" fill="none" stroke="#5a3a2a" stroke-width="1"/>
<!-- Chin -->
<path d="M440,720 C470,740 512,750 550,740 C580,730 600,700 580,680 C560,660 520,660 500,680 C480,700 460,720 440,720 Z"
fill="url(#skinGrad)" stroke="#b8835a" stroke-width="1" stroke-opacity="0.5"/>
<!-- Forehead wrinkles -->
<path d="M380,250 C400,240 440,240 460,250" fill="none" stroke="#b8835a" stroke-width="1" stroke-opacity="0.4"/>
<path d="M560,250 C580,240 620,240 640,250" fill="none" stroke="#b8835a" stroke-width="1" stroke-opacity="0.4"/>
<!-- Cheekbone highlights -->
<ellipse cx="350" cy="400" rx="30" ry="15" fill="#fff" opacity="0.1"/>
<ellipse cx="670" cy="400" rx="30" ry="15" fill="#fff" opacity="0.1"/>
<!-- Ears -->
<ellipse cx="180" cy="400" rx="25" ry="40" fill="url(#skinGrad)" stroke="#b8835a" stroke-width="2"/>
<ellipse cx="840" cy="400" rx="25" ry="40" fill="url(#skinGrad)" stroke="#b8835a" stroke-width="2"/>
<!-- Ear details -->
<path d="M170,390 C180,380 200,380 210,390" fill="none" stroke="#b8835a" stroke-width="1"/>
<path d="M830,390 C840,380 860,380 870,390" fill="none" stroke="#b8835a" stroke-width="1"/>
<!-- Neck -->
<path d="M440,780 C440,820 480,860 512,860 C544,860 580,820 580,780 C580,760 560,750 512,750 C464,750 440,760 440,780 Z"
fill="url(#skinGrad)" stroke="#b8835a" stroke-width="2"/>
<!-- Neck shadow -->
<path d="M440,780 C440,820 480,860 512,860" fill="none" stroke="#b8835a" stroke-width="3" stroke-opacity="0.3"/>
<!-- Final shadow overlay for depth -->
<g opacity="0.15">
<path d="M512,150 C600,150 680,200 720,280 C760,360 780,460 760,560 C740,660 680,740 600,780 C520,820 420,820 340,780 C260,740 200,660 180,560 C160,460 180,360 220,280 C260,200 340,150 440,150 C480,150 500,160 512,170 Z"
fill="black" filter="url(#shadow)"/>
</g>
</svg>