编程与手绘的对比
数媒1604 刘妍 1030516402
一、思路
1、首先选定用P5.JS创造一幅二维静态绘画作品
2、以前未接触过P5.JS,所以参考https://p5js.org/ 了解到P5.JS能提供一下二维形状及其属性
3、接下来思考画什么,先在纸上画个草图,
并决定好各部分的颜色。
4、因为作品是根据坐标来画到屏幕上的,所以大致推导一下坐标和比例。
5、直接在P5.JS安装包里的empty_example的基础上做,先完成基本形状的绘制,再上色就可以了。
二、技术实现:
1、源代码:
function setup() { //准备阶段
// put setup code here
createCanvas(700,700); //画布大小
}
function draw() { //作画阶段
strokeWeight(5); //线宽 5px
fill(220,182,102);
rect(300,150,250,150); //头
fill(182,150,120);
rect(280,180,20,90); //左耳朵
fill(182,150,120);
rect(550,180,20,90); //右耳朵
line(280,210,300,210); //耳朵的线条
line(280,240,300,240);
line(550,210,570,210);
line(550,240,570,240);
line(350,300,350,330); //脖子
line(500,300,500,330);
fill(220,182,102);
quad(300,330,420,330,400,400,300,400); //身子 前面
quad(420,330,530,330,515,400,400,400);
quad(300,400,515,400,500,450,300,450);
quad(300,450,500,450,530,500,300,500);
fill(171,90,57);
quad(530,330,560,342,530,500,500,450); //身子 侧面 四角形
rect(320,500,200,80); //腿
rect(300,580,240,20); //脚
fill(255,255,255); //裤裆
arc(420, 602, 80, 110, 3.12,0, OPEN);
fill(182,150,120);
quad(170,420,300,330,300,400,200,460); //左胳膊
quad(558,351,674,400,658,445,540,400) //yougebo
fill(0,0,0);
ellipse(375,220,15,15); //眼睛
ellipse(465,220,15,15);
fill(220,182,102); //嘴巴
arc(420, 250, 80, 60, 0,3.12, OPEN);
fill(226,0,66);
arc(420, 150, 70, 70, 3.12,0, OPEN); //头顶的包
line(386,140,300,100); //俩犄角
line(458,140,550,100);
}
2、代码实现效果:
扫描二维码关注公众号,回复:
4165746 查看本文章
3、手绘效果
三、创作体验
- 因为不太了解P5.JS,所以我的思路和实际操作有很大的差别。
绘画过程和编程过程的联系只有”过程”吧,这两个过程都遵循一定的顺序,但是具体的操作过程不同,比如说,手绘是先画轮廓再上色,但是编程过程中是这样的:
fill(182,150,120);
rect(550,180,20,90); //右耳朵
先设置颜色,再画。并且,颜色的设置比较麻烦,也很难实现真实情况下颜料的晕染、层次等效果。
- 还有一个非常大的差别在于,手绘是一个很直接的过程,“看到哪画到哪”,但是编程过程中,是间接操作“画笔”在“画布”上绘画,找坐标好难,尤其是找线的交叉点,只能改一点->看看效果->改一点->看看效果,好累。
- 个人感觉用编程画画的思路根本不是画画的思路,编程更倾向于“拼凑”“调整”。
- 编程绘画解决了手绘过程的很多问题,比如说,修改痕迹重、标准图形不好把控、上色不均匀、不易保存等,而且编程绘画能自由操作画布大小、更改图形位置等,更灵活。
- 其实我之所以感觉这次编程绘画很烦,很大程度上是因为工具操作不熟练、或者P5.JS本身存在的弊端,如果选用更好的技术,比如说直接用一个画图板程序,或者更直接的:用手绘板操作,就完全是另一种感受了。
- 即使,计算机能达到普通手绘达不到的效率和效果,但是,我觉得编程实现的作品缺少灵气,没有质感,也缺少了手绘过程独特的心思沉淀、实时创作的乐趣所在。
四、创作偏好:
单纯就现阶段的“应用P5.JS进行绘画”和“手绘作品”来讲,我更喜欢直接手绘。我更倾向于,用计算机技术去完善手绘作品。
五、总结:
编程过程和绘画过程有重叠的部分:创作。编程和绘画行为都是将作品呈现出来,只是过程和思路不同。编程的过程逻辑缜密,步骤严谨,手绘过程比较随意。