Character Creator是一个帮助人们轻松创建出漫画角色的web应用程序,只要按照自己的喜好选择人物特征元素(包括性别、发行、眼镜、嘴唇等等),就能创建出一个漫画形象,具体的大家可以进入网站体验,网址:https://charactercreator.org/。4 m# R+ `' v, U( K8 J% O n, v
4 \; @# ^) {( z1 ~$ Z3 _, J; |* U6 Y+ f2 M
4 K6 L3 C5 y% t" zFrederic是这个网站的开发者,他竟然用了六年的时间来创建和改善这个网站,直到现在收入才达到450美元。可以说是,Frederic是“用爱发电”。让人感到佩服的是,他原先只是一个漫画家,自学各种开发技术,一步一步再创建了Character Creator。 ( ` J1 z/ p+ ?5 S: x l ] ! S' Y' T" o2 a* E" E! D$ F5 f7 }你的背景是什么?现在在做什么? $ c V* r0 c' f - r8 ^/ h0 Q+ j+ Z% A. D嗨!我的名字叫Frederic,是一个漫画家和网页开发人员。我从小就在家里的电脑上编程,在画桌上画漫画。4 X4 t8 }' {6 W% i
+ R( a! g5 K) w1 l- k/ i! J我曾画过一段时间的漫画,最终成为了一名网络开发人员。这两种技能最终结合在一起,这也是我们做出Character Creator这个产品的基础。 . H" z9 m* a- Q5 z% U, z ( q# K. m6 m) Z5 C+ dCharacter Creator是一个web应用程序,它帮助故事讲述者能够按自己想要的效果创建漫画角色。只需点击一系列选项和菜单,根据自己的选择就能建立角色。网站还有一个下载按钮,这样使用者就可以在存储设备上保存一份矢量文件。 * t3 q5 f9 W9 R+ O: M" E! H9 J, n+ t1 E" F/ `1 H
我创建Character Creator目的是让自己能够改进角色创建过程。作为一名开发人员,我可以看到重用代码的好处,但作为一名艺术家,没有复杂的方法来做到这一点。4 E2 B* m/ `" f: S4 d( E+ q
) N/ H% X2 b& e, y9 H: G漫画家们每次画一个新的面板都是要从零开始的。而通过将矢量艺术转换为一种媒介,并将字符作为代码位来处理,我就能够将组成字符的所有元素进行分类,并在每次需要它们作为新字符的一部分时,用模块化的方式重复利用。这样一来,每个项目只需要绘制一次,所有人都可以使用。: U- ?) P1 D/ o
$ N/ d* @- P, v9 r* O0 ^
组织这些图的另一个好处是,您可以设计一个算法来帮助从大量元素中创建原始的、随机的字符。这些随机的角色往往会给故事带来惊喜和灵感。 W" x4 Y5 u7 \2 R
8 H) M2 L; Z" h 是什么激励你开始构建Character Creator?+ P5 q% i P J6 l% Z5 ~6 w
0 L7 Z! r/ }6 I$ I7 a我当时正在做一个漫画书的项目,这个项目开始失控了。我想要以最有趣的方式着处理这个项目,但整个过程让我感到筋疲力尽,把项目拖得很慢。这个痛苦的过程,迫使我去寻找更好的方式来完成任务。 4 ~# Z. Z1 Q5 T; M" F8 a1 g+ K- q6 r8 \0 y i) K
那时,我已经把软件换成了Linux,并开始使用免费的图形程序,这时我发现了矢量图形程序Inkscape。它让我重新发现了矢量图形。几年前在学校时我就玩过这种格式,但当时并不是很感兴趣。3 a1 `- ]* g! M) l8 s
- E2 w" p* d% N. u5 o$ h/ J
可缩放矢量图形(Scalable Vector Graphics,SVG)的属性让我觉得可以尝试和测试一下自己理论。* [* g- h) n- T2 \; w
! b j$ t" U8 J* d5 e% H' [- M+ ~为此,我还必须会用JavaScript编写代码,以便能够按照我的设想构建应用程序。起初,我使用了自己能想到的每一个库,并向朋友寻求帮助,以获得一个最小的可行产品并运行起来。 ) r% t% g& `5 |% D! {9 y: S4 d) O" E# a6 y2 h; x3 `
我使用了Snap.svg和jQuery,甚至D3。但这只是一种让一个版本运行起来快速简单的方式,并让人们可以给我反馈以进行多次迭代。随着时间的推移,我选择删除所有库,并用自定义函数替换项目中的所有用例。我不得不对代码的某些部分进行两三次重构,但每次迭代都是一次改进。直到现在仍有改进的空间。 : J$ L& n6 R6 Y0 w g' I8 O( i; k! W5 I4 D& a+ c- S
这个网站一开始只有几个访问者,但很快就逐渐减少了。在过去的六年里,只要有可能,我就会不断地更新网站。我不断的修复bug,在路线图中添加所有的特性,并弄清楚自己要按照什么顺序去做。 5 {8 }% @8 _; f2 Y ' {/ S, n$ c# J8 k- r$ g/ Z9 k直到三年后,流量才开始有有机地增长。人们开始发现它,并有足够的兴趣花时间创造自己的角色。可供选择的物品清单必须达到临界质量,才能使游戏般的界面具有吸引力和沉浸感。; y, l H6 K F- ?% ~: Z! n