小菜温馨提醒:本篇文章图片、视频内容较多,请耐心阅读?
我们的基本武器弹药有哪些?也就是创作离不开的常用基本图形元素有哪些?
- 圆cirlce
- 椭圆ellipse
- 线条line
- 点point
- 四边形quad
- 矩形rect
- 正方形square
- 三角形triangle
- 贝塞尔曲线bezier
- 曲线curve
还有一些外界输入源
- 图片image
- 视频video
有了这些武器弹药,我们就可以在生成艺术的领域中闯关了!
但仅仅用这些武器弹药,还不够,仅仅能够在画布上打出这些基本图元,威力还不够大,我们需要再使用一些装备增强我们的战斗力,这样我们才能在画布上打出艺术感的画面。
有哪些增强装备?
- Color 那些年我们使用过的颜料桶?
- Tiling 网格法
- Displacement 错位法
- Repetition 重复法
- Recursion 递归法
- Algorithm 算法
本篇文章的写作来源自 youtube 的一个视频 https://www.youtube.com/watch?v=4Se0_w0ISYk,为了方便部分读者观看,我放到了这里。
在本篇文章,基本图元部分小菜就不展开说了,大家在用 processing 绘制的时候,经常接触到这些图形。文章主要围绕方法论说起。
来吧,一起开启我们的战斗之旅吧。
Color ?颜料桶
线条与色彩就是我的武器,我正试图用我的方式去表现出我认为是最正确、最美好、自然也就是像所有伟大艺术家所熟悉的最美的一切。----毕加索
色彩会使我们的作品变得斑斓,也会给原本黑白灰的画面注入生命力。通常我们可以用 random(255) 来随机获得一个RGBA的通道值来得到颜色值。
代码语言:javascript复制color c = color(random(255), random(255), random(255), random(255))
但有时候随机的颜色并不见得好,往往会显得杂乱。颜色也是有搭配的学问的。在色彩搭配中,要了解对比色、互补色、相邻色等概念,合理的选择颜色,使用到我们的作品中,使得作品的整体色彩更加和谐。
在这里,小菜推荐三个自己常用的色彩搭配网站。
1)http://colormind.io/
2)https://colorhunt.co/
3)https://coolors.co/generate
关于在 processing 中如何使用,可以戳这里?
https://www.wolai.com/childhoodandy/qTUHgA15xN1PNi5F3yCzsH?theme=light
在这篇学习笔记中,小菜提到了 ColorScheme 库以及如何在代码中使用 https://coolors.co/generate 网站生成的推荐色。
Tiling 网格法
在艺术创作中,网格创作法是常常用到的一种方法,简单有效。
之前小菜不谦虚,自称老鸟(无知者无畏,井底之蛙),写了一篇使用网格法创作的一个思路,文章可以戳 ? 老鸟带你画tiled lines。
tiled lines 效果图
tiled lipnes原理动态演示
我们再来欣赏领略下使用网格创作法创作的作品
更多 tiling 的创意可以参考这个网址,例子非常丰富 http://arearugscarpet.blogspot.com/2014/04/the-curse-of-truchets-tiles.html
一个网格中的图形经过90度、180度、270度等角度的旋转或者水平垂直镜像等方式,结合某些相邻规则,则可以创作出千变万化同时具有美感的艺术图形。
Displacement 错位法
我们看下视频中的两个例子。
在例子1中,我们在画面中画一些平行线,想给这些线一些变化,不然太单调了对吧。
我们给线条打上点。
于是给线条中的点,上下进行错位,形成变化。
但还不够。靠近下方,靠近末尾,让错位的幅度更大点。
你看,一个有趣的作品就出来了。
例子2是一个经典的例子。本来是规规矩矩的方格子,一行一行的。但我们用错位法来个它加些料:越靠下的方格子,扭动旋转的角度范围就越大,横向错位的幅度也越大。
你瞧,又一个名作诞生了。
Repetition 重复法
顾名思义,将图形一遍又一遍的在画面中进行重复,但通常会发生些微变化。如视频中例子所示。重复法结合后文提到的噪波函数会有巨大威力。
Recursion 递归法
三角形中套三角形,一直递归绘制下去,直到一个终止条件,如三角形的高度小于某个值。
在上面的基础上,运用重复法,加上一些变化。
递归的方式绘制树?
在 processing 中,递归分形是一大浪漫(噪波函数是另一大浪漫)。分形简洁有力。
Algorithm 算法
算法有很多很多,涉及数学、物理等方方面面。在 processing 创作中,非常基础的如数学的三角函数、物理的速度、加速度等,都可以认为是一种算法。因为算法其实是定义了一套运算的规则。
柏林噪声函数(噪波函数)在 processing 中是一个王者级别的函数。非常牛X。噪波函数随机出来的值,相比多次 random() 值,更具有连续性。
生成艺术中,会有确定和不确定的成分在里面。随机,就是不确定。随机中的连续,就会给不确定增加了一些确定。艺术家们利用这一点,创作出了非常多的有意思的作品。
用色彩上色,增加感染力
另一个例子,关于图像处理,对图像进行“采样显示”。
最后附一个之前用噪波函数处理图片的一个例子(噪波函数形成的流场笔刷绘制出图片)
以上就是我们在用 processing 或者其他工具进行生成艺术创作的时候常常用到的方法和思路。上面所提到的方法不局限于单一使用,可以随意进行组合。
当创意枯竭或者没有方向的时候,不妨从这几方面思考下,或许柳暗花明又一村。