潘曄妞
生成藝術簡史及其在字體及標識設計方面之應用
潘曄妞
21世紀是數(shù)碼科技的時代。毫不夸張地說,電腦及數(shù)碼科技的發(fā)展正昭示著平面設計領域新的革命。其中最為顯著、確鑿的變革,是一種可稱為“元設計”的、橫跨藝術、設計、及電腦運算等領域的新的設計實踐的出現(xiàn)。這類新的設計實踐并非對傳統(tǒng)設計手段的取締,而應被視作對設計。
生成藝術;字體設計;標志設計
在今天,愈發(fā)智能的圖形軟件和算法已能自動并嫻熟地輔助設計師完成許多設計過程中簡單、瑣碎的步驟,而設計師則逐漸習得另一種展示自身設計才華的方式——即從更高、更抽象的宏觀視角出發(fā)去制定設計規(guī)則和美學,通過編寫代碼及腳本來配置、引導軟件的自主設計,并以一種美學裁判的姿態(tài)對軟件生產的設計結果進行篩選和迭代,從而實現(xiàn)設計意圖。工具及理念的革新,特別是網頁設計領域的進步,亦造就了新的美學觀念及審美趣味。當今絕大多數(shù)平面設計師所接受的、扎根于傳統(tǒng)美術如繪畫、雕塑、及建筑的課程及訓練模式,已無法應對數(shù)碼時代新的美學理念和審美需求。那些從核心上模擬“前數(shù)碼時代”設計范式的軟件如Photoshop和Illustrator及工具如手繪板等,與數(shù)碼時代真正的奠基工具—代碼及根植于代碼式思維的人機界面,形成了強烈對比。僅以靜態(tài)-動態(tài)這一組范疇而論,傳統(tǒng)平面設計遵循從靜態(tài)出發(fā)的原則,視桌面排版為首要設計對象,卻忽視了當下網頁設計的主流乃動態(tài)內容這一普遍現(xiàn)實。當遇到設計純動態(tài)內容的挑戰(zhàn)時,囿于傳統(tǒng)的平面設計師充其量只能設計靜態(tài)的原型,再交由軟件工程師將靜態(tài)圖形轉化為動態(tài)。這種做法存在著不少弊端,增加了設計的不連貫性及設計師與工程師溝通、協(xié)調上的難度不說,而且使得設計師必須大費周折方能實現(xiàn)原本的設計構想。當設計對象轉移至方興未艾的交互設計時,其視覺元素全由動態(tài)構成,所蘊含的設計原則更是與不少保守的主流平面設計的設計理念大相徑庭。
數(shù)碼時代的蓬勃發(fā)展必然催生出更加先進的設計理念。與傳統(tǒng)平面設計手法形成鮮明對比的,是可稱為“元設計”的二十一世紀的新型設計方式?!霸O計”這一標簽,既從宏觀的角度了點出了這是通過對設計理論、設計對象和設計美學的后設觀照、反思和延伸而獲得的一種更高層次的設計實踐,又明確指涉了在這一設計實踐中,設計對象從原本的設計產品向設計系統(tǒng)的轉移。在傳統(tǒng)的設計實踐中,設計師是設計產品的直接生產者,設計產品是設計師設計過程的直接產物。不管是標識、網頁、還是字體,一切的設計產品一旦離開了設計師和設計師的主觀意志便無法誕生。而“元設計”的直接產物并非設計產品本身,而是一種獨特的“算法設計系統(tǒng)”(又名“算法生成系統(tǒng)”,以下簡稱“設計系統(tǒng)”或“生成系統(tǒng)”),多以電腦程式為其表現(xiàn)形式。此類算法設計系統(tǒng)將遵循設計師厘定的設計規(guī)則——不管是抽象的、以自然語言描述的算法,還是具體的、執(zhí)行底層的圖形運算和幾何生成的代碼——“自動”地生產出符合設計師設計意圖和美學標準的圖形。換言之,設計師并不參與繪制這些圖形,只需設計出有能力自行繪制圖形的電腦程式。繪制出的圖形或是完全靜止的,或是在二維或三維空間中持續(xù)不斷變化著的連續(xù)實體。通過對算法中各項參數(shù)的調整,從設計系統(tǒng)中誕生的設計多樣性是無窮的。作為最終設計產品的圖形可看作是對這無限變化著的連續(xù)實體的“采樣”。某一個設計系統(tǒng)可在不同的設計背景下被反覆應用,創(chuàng)造出微觀上繽紛迥異卻又從宏觀上一脈相承的設計產品。在文章的第二部分,我們將簡單介紹設計生成系統(tǒng)的主流程式語言和軟件平臺。
設計系統(tǒng)并非一夜之間萌生的數(shù)碼設計新范式,實在是在電腦開源軟件風行、圖形處理器運算能力日趨強大、代碼技術及思維高度普及、數(shù)碼屏幕及電腦屏幕審美趨向數(shù)碼化/算法化的背景下,由時代催生的漸進產物。設計系統(tǒng)已成為許多年經設計師熟練實用和信賴的設計范式,象征著平面設計的最前沿。其原因可概括為如下幾點:
1.設計產品正趨向動態(tài)化,而這恰恰是基于靜態(tài)原型的設計范式難以企及的。就設計一個動態(tài)系統(tǒng)的原型而論,使用代碼方為最自然、最合理的起草方式。即便最簡單基礎的數(shù)據可視化項目也時常意味著設計師需要耗費數(shù)小時的時間編寫相應的電腦程式(最常用的有C++,Python或JavaScript等程式語言),以實現(xiàn)從抽象的數(shù)據到直觀的視覺產品的轉換。當設計所欲表現(xiàn)的內容為抽象的數(shù)據時,Photoshop一類的軟件在原型設計階段毫無用武之地。若探究“設計”一詞的真正內涵,則不難看到,此類軟件置設計美化于設計脈絡之先,皆或多或少違背了設計這一美學實踐的初衷,掩蓋了表現(xiàn)內容的本質?,F(xiàn)代設計產品的一項重要特質是其日益增加的對時序邏輯的需求:在不同模態(tài)間轉換的復雜狀態(tài)取代了傳統(tǒng)的線性敘事。以設計的一個重要范疇—應用程式和游戲—為例,許多設計內容要求在數(shù)百種狀態(tài)間動態(tài)切換,而這是靜態(tài)的設計工具和軟件幾乎無法勝任的。同樣的,在現(xiàn)代電腦游戲中,大量的程式化生成視覺元素也已遠非手繪設計所能應付。越來越多的設計師開始將代碼與視覺元素聯(lián)系在一起;換句話說,視覺思考越來越多地在編寫代碼中鋪開。如前所述,當設計產品日漸動態(tài)化,視覺(邏輯)設計與其動態(tài)化呈現(xiàn)已成為不可分割的整體。
2.新一代設計師正逐漸占據重要的設計職位。對這一類設計師來說,編程是最自然的行使她們創(chuàng)造意圖和滿足設計產品要求的工具,而她們的創(chuàng)造過程常常建立在非常系統(tǒng)化的設計手段上。她們既有視覺上的天賦,又有技術上的嫻熟,并且視技術進步為創(chuàng)造力的助推器,同時也是將她們從傳統(tǒng)設計軟件加諸于她們的設計程序中解放出來的途徑。這類設計師面對傳統(tǒng)設計行業(yè)的分工時常表現(xiàn)出強烈的不適應感。
3.持續(xù)拓展的算法設計工具降低了許多自學程式設計的設計師的學習門檻。現(xiàn)今主流的算法設計平臺有:基于Java程式語言的Processing,基于C++的openFrameworks和Cinder,再加上基于JavaScript的p5js等。這些平臺負責記錄設計師編寫的代碼,通過近乎實時地執(zhí)行代碼生成相應的視覺產物,其數(shù)量看似有限,背后卻有著數(shù)以百計的衍生代碼庫的支持。同時我們也目睹了傳授視覺化思維竅門的教學材料的激增。光是針對Processing平臺的近期出版物便包括教科書、視頻教學、教學網站和交互式學習環(huán)境等,其中的大多數(shù)材料都可在互聯(lián)網上免費獲取。
4.值得指出的是,設計系統(tǒng)一直是設計行業(yè)歷史發(fā)展的重要組成環(huán)節(jié)。平面設計史上充滿了運用規(guī)則和設計系統(tǒng)的例子。在電腦進入千家萬戶之前,卡爾-格斯那的《設計程式》一書便勾勒了許多與軟件設計系統(tǒng)如出一轍的想法。由此看來,設計師學會使用設計系統(tǒng)來表達自己的意圖是極為關鍵的能力,尤其當歷史已清楚表明設計系統(tǒng)具備高超的表現(xiàn)力和創(chuàng)造力,并持續(xù)挑戰(zhàn)著因襲自傳統(tǒng)設計勞作的觀念。此外,這些理論在今天已遠不止是對手動設計流程的一種理論指導。我們已經有能力編寫出能創(chuàng)造設計產品的算法設計系統(tǒng),而理解并運用這些系統(tǒng)已成為未來的設計師的義務。
在此作者認為有必要厘清“設計系統(tǒng)”的定義和“設計系統(tǒng)創(chuàng)造的設計產品”這一概念的內涵。從定義上說,設計系統(tǒng)是由設計師設計、以或簡單或復雜的、嚴格的指令和規(guī)則所構成、具有相當程度的過程管理能力和生成設計產品能力的系統(tǒng)。設計系統(tǒng)生成設計產品的過程是一個自主的、獨立于設計系統(tǒng)設計師個人意志的過程。在設計過程中,設計師選定系統(tǒng)各組成環(huán)節(jié)的復雜度和相互次序、設計初始參數(shù)和系統(tǒng)所有可能存在的狀態(tài)。在這套語匯中,“系統(tǒng)”既指代了設計產品的所有可能的呈現(xiàn)方式的集合,又指代了一系列掌控著設計產品的演化的復雜規(guī)則的集合。在普遍實踐中,設計系統(tǒng)通常具有一定程度的隨機性,確保生成過程的每次執(zhí)行都能產生出獨特的、難以復制的結果。我們由此能獲得一定數(shù)量的具有相同視覺邏輯的設計,視其為隸屬于同一系列設計中的迥異個體,依據不同應用場合擇而用之。
此處必須一提的是 ”生成“,主要用以刻畫設計產品的創(chuàng)造過程的特質。“生成”的內涵既囊括了設計師對設計系統(tǒng)的生成邏輯的策造,也包含了獨立于設計師主觀意志的生成過程本身。整個過程止于設計師對系統(tǒng)輸出的全部設計產品的最終篩選,而在設計實踐中部分前期篩選通常由算法中設定好的規(guī)則完成。
設計系統(tǒng)的生成過程和設計哲學不可避免地在設計產品中得以體現(xiàn),甚至可說是設計產品的意蘊和旨趣的重要構成部分。設計系統(tǒng)的特質決定了其偏向于借鑒電腦科學和信息學領域的理論和技術,但這并不意味著許多傳統(tǒng)學科的成熟思想和技術方案不能被設計系統(tǒng)采納??偟膩碚f,設計系統(tǒng)的設計與自然科學(尤其是物理學和生物學)、數(shù)學和前沿科技有著密不可分的聯(lián)系。雖然新的系統(tǒng)和算法不時誕生,下列幾種最為核心的框架/技術是多數(shù)設計系統(tǒng)最為普遍的出發(fā)點:Voronoi diagrams,L-系統(tǒng),細胞自動機,分型和基因算法。
生成系統(tǒng)的設計必須通過一套明晰、清晰和準確的語言來表達。這也體現(xiàn)出電腦程式語言為何在目前是最自然的生成系統(tǒng)設計工具:一份注釋詳細、符合良好程式編寫規(guī)范的程式檔案本身便是對其所設計的系統(tǒng)的最詳細指南和索引。在起草階段,設計師可以拋棄傳統(tǒng)的紙筆及其相應的數(shù)碼產物(如數(shù)碼繪圖板),而通過編寫簡單的核心代碼、或對已有的設計系統(tǒng)代碼進行簡單修改,來測試新的概念和想法的可行性。許多復雜的幾何元素、視覺邏輯的變化,僅僅需要修改幾行代碼便可。
接下來,作者將分析一件實例,進一步闡明設計系統(tǒng)的設計原則。
此設計系統(tǒng)的設計要求是:
1,設計師(或其他用戶)需提供某平面設計的矢量圖形,作為設計系統(tǒng)的數(shù)據輸入;
2,系統(tǒng)以細胞自動機原理為出發(fā)點,以尺寸、透明度皆在固定范圍內隨機變化的球形為”細胞“,使“細胞”根據設定的規(guī)則產生和消亡,并沿著矢量圖的線條為路徑運動;
3,此外,已經生成的“細胞”尺寸會隨著運動距離不斷增大、直到消亡的時刻,給人帶來一種有生命、有韻律的視覺美感。
所運用到的生成設計手段有:
1.利用Processing平臺所使用的Java語言的特性,構建出“圓形”和“蹤跡”兩種主要物件。其中,“圓形”物件是設計圖像的最基本組成元素,每一個個體都有與自身相關數(shù)據的記憶,如所處位置、運動速度、尺寸、擴大速度、透明度、以及是否“死亡”的條件判斷等等。每個“蹤跡”物件控制著一定數(shù)量的“圓形”,并負責這些物件的生長和消亡。
2.利用電腦程式語言生成隨機數(shù)的能力,可以實現(xiàn)在一定范圍內隨機選取“圓形”物件的擴大倍數(shù)、“蹤跡”物件的產生頻率、起始位置、每一“蹤跡”內包含“圓形”的數(shù)量、以及“圓形”物件的運動速度等。這一技巧使得生成的圖形具有豐富的視覺變化且永不重復,也是設計系統(tǒng)設計的重要特征。
3.利用Processing平臺程式庫controlP5提供的圖形用戶界面元素,我們可以在圖形前端植入各種參數(shù)的控制組件,如滑桿、按鈕、切換鍵、旋鈕、及復選框等等。這些控制組件使設計師能夠以一種直覺化的方式實時地調變一切可以改變的設計參數(shù),并直接、實時地獲得調變的結果。