最近迷上了周杰伦的歌,特别是那首《青花瓷》,简直是百听不厌。歌词美,旋律也抓人。听着听着就手痒,想自己也来“瓷”一把,看看能不能用代码也“烧”出点什么来。
说干就干!
第一步:确定方向
不能真的烧瓷器,那就用代码画呗!《青花瓷》嘛肯定要蓝色和白色为主色调。想想青花瓷的纹路,有点像水墨画,那就用 Processing 来搞,感觉比较适合画这种写意的风格。
第二步:环境搭建
Processing 之前玩过一点,不过好久没用了,先去官网下载最新的版本,安装然后打开 Processing,新建一个 sketch(就是项目文件)。
第三步:开始画!
最开始想画一个简单的青花瓷瓶子,先从椭圆开始。在 `setup()` 函数里设置画布大小,背景颜色设成白色。在 `draw()` 函数里,用 `ellipse()` 画一个椭圆,再用 `fill()` 设置填充颜色为蓝色。结果画出来一个蓝色的圆饼,不太好看。
第四步:调整和修改
圆饼肯定不行,得像瓶子。那就多画几个椭圆,大小不一样,叠在一起,看看能不能模拟出瓶子的形状。试了好几次,调整了椭圆的大小和位置,总算有点瓶子的雏形了。但是感觉太死板,没有青花瓷那种灵动的感觉。
第五步:加入纹路
青花瓷的灵魂在于纹路!用 `noFill()` 取消填充,然后用 `stroke()` 设置线条颜色为深蓝色。用 `arc()` 函数画一些弧线,模拟青花瓷的纹路。一开始画得很乱,像乱涂乱画。后来慢慢调整弧线的角度和位置,稍微有点感觉了。还加了一些简单的花瓣形状,让画面更丰富一些。
第六步:细节处理
画了几个小时,感觉有点累了。但是不能半途而废!仔细观察青花瓷的图片,发现它的颜色不是纯粹的蓝色,有点深浅变化。那就用 `color()` 函数创建一个颜色变量,然后随机调整颜色的亮度,让纹路看起来更有层次感。
第七步:最终效果
经过一番折腾,总算画出了一个勉强能看的“青花瓷”。虽然和真正的青花瓷比起来差远了,但是也算是我用代码“烧”出来的一点东西。看着屏幕上的蓝色纹路,听着周杰伦的歌,感觉还挺有成就感的。
这回用 Processing 画“青花瓷”的经历,让我体会到:
- 编程不仅仅是写代码,也可以是一种艺术创作。
- 遇到困难不要怕,慢慢调整和修改,总能找到解决办法。
- 多观察,多思考,才能把细节做得更
下次有机会,还想尝试用代码画其他的中国风元素,比如水墨画、剪纸等等。感觉挺好玩的!