编程与手绘的对比
主题:对比用代码和用手绘创作静态绘画
编程工具:processing
void setup() {
size(1500,650);
}
void draw() {
//表情一
fill(255);
ellipse(320,240,200,200);
ellipse(280,240,50,50);
ellipse(360,240,50,50);
ellipse(320,300,80,40);
fill(0);
ellipse(280,240,20,20);
ellipse(360,240,20,20);
line(260,180,260,100);
line(280,180,280,100);
line(300,180,300,100);
line(320,180,320,100);
line(340,180,340,100);
line(360,180,360,100);
line(380,180,380,100);
//表情二
fill(255);
ellipse(620,240,200,200);
ellipse(580,253,50,50);
ellipse(660,228,50,50);
ellipse(600,300,80,40);
fill(0);
ellipse(580,240,20,20);
ellipse(660,240,20,20);
line(560,180,560,100);
line(580,180,580,100);
line(600,180,600,100);
line(620,180,620,100);
line(640,180,640,100);
line(660,180,660,100);
line(680,180,680,100);
//表情三
fill(255);
ellipse(920,240,200,200);
ellipse(880,240,50,50);
ellipse(960,240,50,50);
ellipse(920,300,35,80);
fill(0);
ellipse(900,240,20,20);
ellipse(940,240,20,20);
line(860,180,860,100);
line(880,180,880,100);
line(900,180,900,100);
line(920,180,920,100);
line(940,180,940,100);
line(960,180,960,100);
line(980,180,980,100);
//表情四
fill(255);
ellipse(1220,240,200,200);
ellipse(1180,240,50,50);
ellipse(1180,240,40,40);
ellipse(1180,240,30,30);
ellipse(1180,240,20,20);
ellipse(1180,240,10,10);
ellipse(1260,240,50,50);
ellipse(1260,240,40,40);
ellipse(1260,240,30,30);
ellipse(1260,240,20,20);
ellipse(1260,240,10,10);
ellipse(1220,300,80,40);
line(1160,180,1160,100);
line(1180,180,1180,100);
line(1200,180,1200,100);
line(1220,180,1220,100);
line(1240,180,1240,100);
line(1260,180,1260,100);
line(1280,180,1280,100);
beginShape();
curveVertex(1180,300);
curveVertex(1200,290);
curveVertex(1220,310);
curveVertex(1240,290);
curveVertex(1260,310);
endShape();
//圆圈花纹
smooth();
noFill();
for(int r = 100; r > 0; r-=5)
{
for(int x =270; x < 1320; x+=100)
{
for(int y =430; y < 630; y+=100)
{
fill(random(0,200),random(0,200),random(0,255));
ellipse(x,y,r,r);
}
}
}
}
码绘结果
手绘图
在这个例子中,有两种类型的画面绘制。一类是常规图形组成的图形,这种图画是可以通过手绘来实现的,但是手绘很难做到线条完美,以这幅图为例,手绘很难将圆画的完美,但是码绘是可以做到的,并且手绘很难做到绘制完全相同的图形,以这幅图为例,几张脸的整体结构是相同的,并且是水平的且间距相同,只是表情上有细微变化,但是手绘无法做到每张脸的大体轮廓保持一致,也很难画在一条直线上并使其间距相同,而码绘可以;另一类图形是通过基本图形的重复来实现有规律性的花纹样式,并且令它的颜色在时刻变化,这种图形首先要保证组成整个图形的每个基本元素都画的完全一致,还要颜色变化,这都是手绘无法实现的。
关于手绘与码绘的总结分析
1. 思路
编程:首先要熟悉画出不同图形的函数并能熟练运用,还要知道如何使用颜色、画笔等基本功能,在了解这些的基础上才可以实现构思的画面,所以码绘是既要求一定的编程基础,还要求对画面的构思创作能力
手绘:纸笔都是现成的,直接构思画面就可以,但是画面的完成度与个人的绘画基本功紧密相关,所以手绘是既要求对画面的构思创作能力,还对绘画的基本功有不同程度的要求
两者的相同点是都要事先构思好大致画面,然后才可以着手去做
2. 技术
编程:基本图形的函数都可以直接调用,画出来的图形没有误差,线条流畅,颜色填充均匀,码绘需要掌握的是绘图的相关函数等,码绘可以实现完全相同的若干张画,而手绘很难做到画出一摸一样的两张画,码绘还可以实现一些效果,例如动图等,还可以加入交互元素,使绘画变得更有趣味性
手绘:需要长时间的练习,要有一定的基本功才能精确的画出自己想要的画面,一般来说,这个时间比学习编程的时间要长,但是因为码绘的每一笔都是代码控制的,在绘制比较有生命力的一些东西,比如绘制自然界的东西时,手绘能表现得更鲜活
两者的相同点是都需要一定时间来掌握所需的基本功
3. 创作体验
编程:需要事先构思好画面,每个元素间的关系、距离等,编程的时候要计算坐标,创作的自由度和灵活性受到一定限制,但是一些比较绚丽的场景,用画笔画出来难度比较大,不是每个人都能画出来的,如果编程实现的话,就会容易许多
手绘:不需要计算,可以事先构思好再下笔,也可以完全自由绘画,创作的自由度和灵活性比较高,但是对个人的绘画能力要求比较高,一些色彩、效果等单用画笔不易实现,而且绘画需要的材料成本较高,相对而言,码绘只需要计算机即可,成本比较可控
两者的相同点是都有无限的创作可能和创新空间
4. 创作偏好
编程:我个人码绘的经验很少,一般画一些颜色变化较细微的,色彩比较梦幻等用画笔比较难实现的内容会选择码绘,需要绘制多次相同元素来组成画面时我会选择码绘
手绘:日常练笔,例如写生、速写等,我会选择手绘,比较自由的一些创作时,例如画有生命的内容时,会选择手绘
总结
首先我认为码绘的效率更高,尤其是在绘制相同的图形时,只需要稍微改动代码甚至不需改动,而手绘就需要一张张的去画;第二,完成高复杂度和高要求的画面时,手绘需要很多年的基本功,而学习编程的时间会短一些,并且编程的经济成本小一些;第三,码绘是代码在控制画面,虽然也可以很灵活的修改,但是我个人认为,在传统的绘画种类中,手绘的表现力是更强的,码绘很难表现出手绘的那种自由,也很难表现出手绘的每一笔的深浅变化和纹路;第四,我认为码绘的一个很大的优势是它可以增加交互性和动态感,例如现在就有展览在展出通过多媒体技术来展示清明上河图,科技使静态的画面动起来,甚至实现三维效果,增加人们的身临其境的感觉,也增加了趣味性,技术的进步使得我们可以借助它们将我们的优秀的文艺作品用更多元化的方式展示给别人,向外传播;最后,我认为相关技术的发展是很有益的,但是码绘不会取代手绘,码绘可以更完美的呈现作品,更多元化的展示作品,它的作品有创新、有设计、有华丽,但是少了点生命力,以国画为例,我个人认为码绘很难实现实际的水、墨与纸接触产生的生命力和自然的晕染,提笔落笔之间自然溅到纸上的水墨等。
参考链接
https://blog.csdn.net/Hewes/article/details/76383246
https://blog.csdn.net/Hewes/article/details/76358957