生成艺术简史及其在字体及标识设计方面之应用
2016-07-13潘晔妞
潘晔妞
生成艺术简史及其在字体及标识设计方面之应用
潘晔妞
21世纪是数码科技的时代。毫不夸张地说,电脑及数码科技的发展正昭示着平面设计领域新的革命。其中最为显著、确凿的变革,是一种可称为“元设计”的、横跨艺术、设计、及电脑运算等领域的新的设计实践的出现。这类新的设计实践并非对传统设计手段的取缔,而应被视作对设计。
生成艺术;字体设计;标志设计
一、设计/生成系统背景
在今天,愈发智能的图形软件和算法已能自动并娴熟地辅助设计师完成许多设计过程中简单、琐碎的步骤,而设计师则逐渐习得另一种展示自身设计才华的方式——即从更高、更抽象的宏观视角出发去制定设计规则和美学,通过编写代码及脚本来配置、引导软件的自主设计,并以一种美学裁判的姿态对软件生产的设计结果进行筛选和迭代,从而实现设计意图。工具及理念的革新,特别是网页设计领域的进步,亦造就了新的美学观念及审美趣味。当今绝大多数平面设计师所接受的、扎根于传统美术如绘画、雕塑、及建筑的课程及训练模式,已无法应对数码时代新的美学理念和审美需求。那些从核心上模拟“前数码时代”设计范式的软件如Photoshop和Illustrator及工具如手绘板等,与数码时代真正的奠基工具—代码及根植于代码式思维的人机界面,形成了强烈对比。仅以静态-动态这一组范畴而论,传统平面设计遵循从静态出发的原则,视桌面排版为首要设计对象,却忽视了当下网页设计的主流乃动态内容这一普遍现实。当遇到设计纯动态内容的挑战时,囿于传统的平面设计师充其量只能设计静态的原型,再交由软件工程师将静态图形转化为动态。这种做法存在着不少弊端,增加了设计的不连贯性及设计师与工程师沟通、协调上的难度不说,而且使得设计师必须大费周折方能实现原本的设计构想。当设计对象转移至方兴未艾的交互设计时,其视觉元素全由动态构成,所蕴含的设计原则更是与不少保守的主流平面设计的设计理念大相径庭。
数码时代的蓬勃发展必然催生出更加先进的设计理念。与传统平面设计手法形成鲜明对比的,是可称为“元设计”的二十一世纪的新型设计方式。“元设计”这一标签,既从宏观的角度了点出了这是通过对设计理论、设计对象和设计美学的后设观照、反思和延伸而获得的一种更高层次的设计实践,又明确指涉了在这一设计实践中,设计对象从原本的设计产品向设计系统的转移。在传统的设计实践中,设计师是设计产品的直接生产者,设计产品是设计师设计过程的直接产物。不管是标识、网页、还是字体,一切的设计产品一旦离开了设计师和设计师的主观意志便无法诞生。而“元设计”的直接产物并非设计产品本身,而是一种独特的“算法设计系统”(又名“算法生成系统”,以下简称“设计系统”或“生成系统”),多以电脑程式为其表现形式。此类算法设计系统将遵循设计师厘定的设计规则——不管是抽象的、以自然语言描述的算法,还是具体的、执行底层的图形运算和几何生成的代码——“自动”地生产出符合设计师设计意图和美学标准的图形。换言之,设计师并不参与绘制这些图形,只需设计出有能力自行绘制图形的电脑程式。绘制出的图形或是完全静止的,或是在二维或三维空间中持续不断变化着的连续实体。通过对算法中各项参数的调整,从设计系统中诞生的设计多样性是无穷的。作为最终设计产品的图形可看作是对这无限变化着的连续实体的“采样”。某一个设计系统可在不同的设计背景下被反覆应用,创造出微观上缤纷迥异却又从宏观上一脉相承的设计产品。在文章的第二部分,我们将简单介绍设计生成系统的主流程式语言和软件平台。
二、设计/生成系统将成为新时代的重要设计手段
设计系统并非一夜之间萌生的数码设计新范式,实在是在电脑开源软件风行、图形处理器运算能力日趋强大、代码技术及思维高度普及、数码屏幕及电脑屏幕审美趋向数码化/算法化的背景下,由时代催生的渐进产物。设计系统已成为许多年经设计师熟练实用和信赖的设计范式,象征着平面设计的最前沿。其原因可概括为如下几点:
1.设计产品正趋向动态化,而这恰恰是基于静态原型的设计范式难以企及的。就设计一个动态系统的原型而论,使用代码方为最自然、最合理的起草方式。即便最简单基础的数据可视化项目也时常意味着设计师需要耗费数小时的时间编写相应的电脑程式(最常用的有C++,Python或JavaScript等程式语言),以实现从抽象的数据到直观的视觉产品的转换。当设计所欲表现的内容为抽象的数据时,Photoshop一类的软件在原型设计阶段毫无用武之地。若探究“设计”一词的真正内涵,则不难看到,此类软件置设计美化于设计脉络之先,皆或多或少违背了设计这一美学实践的初衷,掩盖了表现内容的本质。现代设计产品的一项重要特质是其日益增加的对时序逻辑的需求:在不同模态间转换的复杂状态取代了传统的线性叙事。以设计的一个重要范畴—应用程式和游戏—为例,许多设计内容要求在数百种状态间动态切换,而这是静态的设计工具和软件几乎无法胜任的。同样的,在现代电脑游戏中,大量的程式化生成视觉元素也已远非手绘设计所能应付。越来越多的设计师开始将代码与视觉元素联系在一起;换句话说,视觉思考越来越多地在编写代码中铺开。如前所述,当设计产品日渐动态化,视觉(逻辑)设计与其动态化呈现已成为不可分割的整体。
2.新一代设计师正逐渐占据重要的设计职位。对这一类设计师来说,编程是最自然的行使她们创造意图和满足设计产品要求的工具,而她们的创造过程常常建立在非常系统化的设计手段上。她们既有视觉上的天赋,又有技术上的娴熟,并且视技术进步为创造力的助推器,同时也是将她们从传统设计软件加诸于她们的设计程序中解放出来的途径。这类设计师面对传统设计行业的分工时常表现出强烈的不适应感。
3.持续拓展的算法设计工具降低了许多自学程式设计的设计师的学习门槛。现今主流的算法设计平台有:基于Java程式语言的Processing,基于C++的openFrameworks和Cinder,再加上基于JavaScript的p5js等。这些平台负责记录设计师编写的代码,通过近乎实时地执行代码生成相应的视觉产物,其数量看似有限,背后却有着数以百计的衍生代码库的支持。同时我们也目睹了传授视觉化思维窍门的教学材料的激增。光是针对Processing平台的近期出版物便包括教科书、视频教学、教学网站和交互式学习环境等,其中的大多数材料都可在互联网上免费获取。
4.值得指出的是,设计系统一直是设计行业历史发展的重要组成环节。平面设计史上充满了运用规则和设计系统的例子。在电脑进入千家万户之前,卡尔-格斯那的《设计程式》一书便勾勒了许多与软件设计系统如出一辙的想法。由此看来,设计师学会使用设计系统来表达自己的意图是极为关键的能力,尤其当历史已清楚表明设计系统具备高超的表现力和创造力,并持续挑战着因袭自传统设计劳作的观念。此外,这些理论在今天已远不止是对手动设计流程的一种理论指导。我们已经有能力编写出能创造设计产品的算法设计系统,而理解并运用这些系统已成为未来的设计师的义务。
三、设计/生成系统原理简介
在此作者认为有必要厘清“设计系统”的定义和“设计系统创造的设计产品”这一概念的内涵。从定义上说,设计系统是由设计师设计、以或简单或复杂的、严格的指令和规则所构成、具有相当程度的过程管理能力和生成设计产品能力的系统。设计系统生成设计产品的过程是一个自主的、独立于设计系统设计师个人意志的过程。在设计过程中,设计师选定系统各组成环节的复杂度和相互次序、设计初始参数和系统所有可能存在的状态。在这套语汇中,“系统”既指代了设计产品的所有可能的呈现方式的集合,又指代了一系列掌控着设计产品的演化的复杂规则的集合。在普遍实践中,设计系统通常具有一定程度的随机性,确保生成过程的每次执行都能产生出独特的、难以复制的结果。我们由此能获得一定数量的具有相同视觉逻辑的设计,视其为隶属于同一系列设计中的迥异个体,依据不同应用场合择而用之。
此处必须一提的是 ”生成“,主要用以刻画设计产品的创造过程的特质。“生成”的内涵既囊括了设计师对设计系统的生成逻辑的策造,也包含了独立于设计师主观意志的生成过程本身。整个过程止于设计师对系统输出的全部设计产品的最终筛选,而在设计实践中部分前期筛选通常由算法中设定好的规则完成。
设计系统的生成过程和设计哲学不可避免地在设计产品中得以体现,甚至可说是设计产品的意蕴和旨趣的重要构成部分。设计系统的特质决定了其偏向于借鉴电脑科学和信息学领域的理论和技术,但这并不意味着许多传统学科的成熟思想和技术方案不能被设计系统采纳。总的来说,设计系统的设计与自然科学(尤其是物理学和生物学)、数学和前沿科技有着密不可分的联系。虽然新的系统和算法不时诞生,下列几种最为核心的框架/技术是多数设计系统最为普遍的出发点:Voronoi diagrams,L-系统,细胞自动机,分型和基因算法。
生成系统的设计必须通过一套明晰、清晰和准确的语言来表达。这也体现出电脑程式语言为何在目前是最自然的生成系统设计工具:一份注释详细、符合良好程式编写规范的程式档案本身便是对其所设计的系统的最详细指南和索引。在起草阶段,设计师可以抛弃传统的纸笔及其相应的数码产物(如数码绘图板),而通过编写简单的核心代码、或对已有的设计系统代码进行简单修改,来测试新的概念和想法的可行性。许多复杂的几何元素、视觉逻辑的变化,仅仅需要修改几行代码便可。
四、设计/生成系统实例分析
接下来,作者将分析一件实例,进一步阐明设计系统的设计原则。
此设计系统的设计要求是:
1,设计师(或其他用户)需提供某平面设计的矢量图形,作为设计系统的数据输入;
2,系统以细胞自动机原理为出发点,以尺寸、透明度皆在固定范围内随机变化的球形为”细胞“,使“细胞”根据设定的规则产生和消亡,并沿着矢量图的线条为路径运动;
3,此外,已经生成的“细胞”尺寸会随着运动距离不断增大、直到消亡的时刻,给人带来一种有生命、有韵律的视觉美感。
所运用到的生成设计手段有:
1.利用Processing平台所使用的Java语言的特性,构建出“圆形”和“踪迹”两种主要物件。其中,“圆形”物件是设计图像的最基本组成元素,每一个个体都有与自身相关数据的记忆,如所处位置、运动速度、尺寸、扩大速度、透明度、以及是否“死亡”的条件判断等等。每个“踪迹”物件控制着一定数量的“圆形”,并负责这些物件的生长和消亡。
2.利用电脑程式语言生成随机数的能力,可以实现在一定范围内随机选取“圆形”物件的扩大倍数、“踪迹”物件的产生频率、起始位置、每一“踪迹”内包含“圆形”的数量、以及“圆形”物件的运动速度等。这一技巧使得生成的图形具有丰富的视觉变化且永不重复,也是设计系统设计的重要特征。
3.利用Processing平台程式库controlP5提供的图形用户界面元素,我们可以在图形前端植入各种参数的控制组件,如滑杆、按钮、切换键、旋钮、及复选框等等。这些控制组件使设计师能够以一种直觉化的方式实时地调变一切可以改变的设计参数,并直接、实时地获得调变的结果。