前语
最近体验了一下最新的模型 gpt-4,确实名不虚传,gpt-4 比 gpt-3.5 更智能。咱们今日就让 gpt-4 来完成一个 svg 描边动画,看看它的才干如何。如果有同学想用 RMB 购买 plus 可以参阅我的文章:使用支付宝开通 ChatGPT plus。
实操
1. 咱们一步一步来,先不加动画,直接要求画个西瓜,看看是否契合咱们的预期;
看着好像画的不错,比 gpt-3.5 要好很多,下面是 gpt-3.5 画的:
-
西瓜瓤应该是红色的,咱们纠正一下。下面我就不张贴 chatgpt 回答的内容了,直接贴代码的效果图。
-
画一个完好的西瓜
这个西瓜勉强可以承受吧,我真实不知道该怎么描述西瓜的样子了。
-
开端加描边动画
功能完成的很不错,下面是完好代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>带动画的西瓜</title>
<style>
.melon-path {
stroke-dasharray: 1000;
stroke-dashoffset: 0;
transition: stroke-dashoffset 2s;
}
.melon-svg:hover .melon-path {
animation: drawMelon 2s forwards;
}
@keyframes drawMelon {
0%, 1% {
stroke-dashoffset: 0;
}
2% {
stroke-dashoffset: 1000;
}
100% {
stroke-dashoffset: 0;
}
}
</style>
</head>
<body>
<svg class="melon-svg" width="200px" height="100px" viewBox="0 0 200 100" xmlns="http://www.w3.org/2000/svg">
<defs>
<clipPath id="melon-clip">
<ellipse cx="100" cy="50" rx="93" ry="43"/>
</clipPath>
</defs>
<!-- 西瓜主体部分 -->
<ellipse class="melon-path" cx="100" cy="50" rx="95" ry="45" fill="#56C05D" stroke="black" stroke-width="2"/>
<!-- 西瓜条纹部分 -->
<g clip-path="url(#melon-clip)">
<path class="melon-path" d="M 0,20 Q 50,10 100,20 T 200,20" stroke="#399D4A" stroke-width="2" fill="none"/>
<path class="melon-path" d="M 0,35 Q 50,25 100,35 T 200,35" stroke="#399D4A" stroke-width="2" fill="none"/>
<path class="melon-path" d="M 0,50 Q 50,40 100,50 T 200,50" stroke="#399D4A" stroke-width="2" fill="none"/>
<path class="melon-path" d="M 0,65 Q 50,55 100,65 T 200,65" stroke="#399D4A" stroke-width="2" fill="none"/>
<path class="melon-path" d="M 0,80 Q 50,70 100,80 T 200,80" stroke="#399D4A" stroke-width="2" fill="none"/>
</g>
</svg>
</body>
</html>
-
本来想去掉绿色布景的,但是触发用量约束了
总结
在给 chatgpt 提需求的时分描述要尽或许精确,并且要提供足够的上下文,只要这样 chatgpt 才干理解你的意图;
咱们的测验实际上包括绘画+编码,要描述画成什么样其实很困难,chatgpt 把西瓜画到这个程度现已很厉害了。