內(nèi)容簡介 本書將引領你進入編程藝術的世界。本書揭示了運用Processing創(chuàng)建高質(zhì)量互動藝術作品的奧秘,你將感受到Processing的敏捷性和藝術性,內(nèi)容覆蓋繪圖、響應互動、動畫、視頻、3D、物理計算等專題。精選的實例將激發(fā)讀者的想象力和創(chuàng)造的樂趣,閱讀和練習本書的案例即能快速進入互動藝術創(chuàng)作。本書語言簡潔易懂,案例設計獨特,所有代碼均可在線下載,適合于專業(yè)編程人員和學習互動藝術的讀者。 前 言 編程,即計算機程序設計,是讓計算機為解決某個問題而使用某種程序設計語言編寫程序代碼,并最終得到結(jié)果的過程。也許有人認為編程課程只適合于理工類專業(yè),對藝術設計類專業(yè)來講似乎意義不大,實際上并非這樣。程序設計技術的先驅(qū)者唐納德·克努特認為,程序設計既是一門科學,也是一門藝術,這兩方面可以彼此很好地相互補充?茖W的方法一般是通過“邏輯的”、“系統(tǒng)的”、“非個人的”、“冷靜的”、“理性的”這些詞來表征的,而藝術的方法是通過“藝術的”、“創(chuàng)新的”、“博愛的”、“渴望的”、“非理性的”這些詞來表征的。 2009年11月,英國倫敦V&A博物館“數(shù)字設計感官展”展出了大量由計算機程序生成的互動藝術作品,展覽打破了作品靜態(tài)呈現(xiàn)的傳統(tǒng)展示方式,顛覆了觀眾靜觀作品的觀看慣性。計算機程序?qū)λ囆g的介入引發(fā)了藝術家創(chuàng)作工具和思維方式的轉(zhuǎn)變。研究如何編寫程序、創(chuàng)造聲音或圖像的界面以實現(xiàn)代碼與觀眾之間的交流互動,成為設計藝術界新的課題。美國排名前列的羅德島設計學院聘請麻省理工媒體實驗室ACG小組主任約翰·梅達擔任校長,傳統(tǒng)的藝術設計行業(yè)正面臨著一場革命。編寫程序不僅是程序員的專利,它也已成為數(shù)字藝術家的創(chuàng)作手段,以及藝術院校的必修課程。英國皇家藝術學院、耶魯大學設計學院、加州大學媒體藝術專業(yè)、卡內(nèi)基梅隆大學等院校都把編程作為教學課題。 大部分設計師都會使用商業(yè)軟件(如 Photoshop、Illustrator、Flash)來從事創(chuàng)作,這些軟件功能豐富、使用方便,可以實現(xiàn)預設的效果。但人們的創(chuàng)意和表現(xiàn)形式往往被企業(yè)所主導的制式化生產(chǎn)工具所限制。Processing的出現(xiàn)是藝術設計創(chuàng)作的一場革命,它是一種具有前瞻性的新興計算機語言,用戶主要面向計算機程序員和數(shù)字藝術家。藝術家可以運用Processing生成唯美的圖形,為互動藝術作品編寫程序,將抽象的數(shù)據(jù)呈現(xiàn)為視覺形象。當你進入到互動編程藝術的世界,就會發(fā)現(xiàn)這一切都是讓人興奮不已的。 由于文化和語言的差異,國內(nèi)研究Processing的學術機構并不多見,中文網(wǎng)站和學術論壇等學習資源有限,也沒有相關的中文版本的書籍。資料的缺乏在很大程度上降低了中國設計師學習Processing的積極性。鑒于以上現(xiàn)實,作者根據(jù)自身的教學實踐編寫了本書。本書可作為學習互動藝術編程的基礎書籍,主要面向藝術院校數(shù)字媒體設計專業(yè)、交互設計專業(yè),以及業(yè)界的設計師,等等。本書前兩章主要介紹了Processing的背景、編程與互動藝術的關系,以及編程基礎知識。接下來的章節(jié)對繪畫、互動、動畫、函數(shù)與對象、數(shù)組、圖片與文字、視頻與音頻、3D與物理計算等方面進行了較為全面的論述,并結(jié)合了大量的實例與作品分析來啟發(fā)讀者的互動藝術思維。在國內(nèi),互動藝術和編程藝術都是新的研究領域,本書是在一個全新的領域中進行探索,在此過程中難免會存在不完善之處,希望得到相關專家和廣大讀者的批評指正! 在創(chuàng)意產(chǎn)業(yè)迅速發(fā)展的中國,我們有理由相信新一代的藝術家和設計師們不會只停留在軟件應用的層次,他們會運用編程去創(chuàng)新、發(fā)展藝術與設計,并將民族文化與思想注入到作品中! 作者:譚亮 2011年5月于廣州 作者簡介 譚亮,2004年至今任教于廣州美術學院新媒介藝術專業(yè),致力于互動藝術、編程藝術教學與研究。2005年作品參加日本愛知世界博覽會中國館數(shù)字藝術項目。2007年赴德國柏林設計學院信息設計系交流,“城市突變”國際工作坊指導教師。2008年在英國文化協(xié)會主辦的“香港48小時和合設計競賽”中獲得Best Design獎。2009年赴法國?怂?普羅旺斯藝術學院訪問學習。
目錄: 目 錄 第1章 認識Processing 1 1.1 Processing是什么 2 1.2 Processing的誕生 3 1.2.1 MIT與約翰?梅達 3 1.2.2 Casey Reas和Ben Fry 6 1.3 Processing能做什么 8 1.3.1 數(shù)據(jù)視覺化 8 1.3.2 生成藝術 10 1.3.3 互動藝術 14 第2章 使用Processing 17 2.1 下載與安裝 17 2.2 開發(fā)環(huán)境 18 2.2.1 開發(fā)環(huán)境界面 18 2.2.2 快捷按鈕 20 2.3 語法結(jié)構 20 2.3.1 基本語句 21 2.3.2 代碼編寫流程 22 2.3.3 注釋 22 2.3.4 表達式和陳述 23 2.3.5 控制臺 24 2.4 變量 24 2.4.1 聲明一個變量 25 2.4.2 變量的類型 26 2.4.3 系統(tǒng)變量 27 2.5 符號與條件式 28 2.5.1 布爾表達式 28 2.5.2 算術運算符 28 2.5.3 關系操作符 29 2.5.4 邏輯操作符 29 2.5.5 條件式——if、else和else if 33 本章作業(yè) 36 第3章 繪畫 39 3.1 畫布與坐標 39 3.1.1 像素與畫布 39 3.1.2 直角坐標與計算機屏幕坐標 40 3.2 圖形 41 3.2.1 點 41 3.2.2 直線 42 3.2.3 矩形 42 3.2.4 圓與圓弧形 43 3.2.5 三角形與四邊形 45 3.2.6 貝塞爾曲線 46 3.2.7 自由圖形 47 3.3 色彩 49 3.3.1 灰階與透明度 50 3.3.2 RGB色彩 52 3.3.3 HSB色彩 53 3.4 繪畫屬性設定 55 3.4.1 填色與邊框 55 3.4.2 圖形的順序 56 3.5 重復繪畫 58 3.5.1 簡單的重復 58 3.5.2 迭代法與while循環(huán) 59 3.5.3 for 循環(huán) 60 3.6 PDF輸出與繪畫實例 62 3.6.1 PDF格式輸出 62 3.6.2 繪畫實例 63 3.6.3 學生作品欣賞 64 本章作業(yè) 66 第4章 響應互動 67 4.1 鼠標響應 67 4.1.1 鼠標移動響應mouseX 和 mouseY 67 4.1.2 pmouseX和pmouseY 70 4.1.3 鼠標響應事件 72 4.2 鍵盤響應 75 4.2.1 按擊鍵響應 75 4.2.2 特定按鍵響應 78 4.2.3 功能鍵響應 79 4.3 隨機random 80 4.4 限制constrain 83 本章作業(yè) 84 第5章 動畫 85 5.1 運動的產(chǎn)生 85 5.1.1 變量控制運動 85 5.1.2 條件句控制運動 86 5.1.3 加速與減速 87 5.2 隨機運動 89 5.3 曲線軌跡運動 90 5.4 坐標轉(zhuǎn)移、旋轉(zhuǎn)與縮放 95 5.4.1 坐標轉(zhuǎn)移 95 5.4.2 旋轉(zhuǎn)運動 96 5.4.3 縮放運動 99 5.5 pushMatrix() 與 popMatrix() 100 5.6 時間控制 102 本章作業(yè) 103 第6章 函數(shù)與對象 105 6.1 函數(shù) 105 6.1.1 定義函數(shù) 105 6.1.2 調(diào)用函數(shù) 109 6.1.3 函數(shù)與循環(huán) 111 6.1.4 函數(shù)返回類型 114 6.2 類與對象 115 6.2.1 面向?qū)ο蟮某绦蛟O計 115 6.2.2 定義類 116 6.2.3 創(chuàng)建對象 119 6.2.4 構造器的引數(shù) 121 本章作業(yè) 124 第7章 數(shù)組 125 7.1 變量列數(shù)組 127 7.1.1 聲明變量列數(shù)組 127 7.1.2 定義數(shù)組的長度 128 7.1.3 給數(shù)組賦值 128 7.2 變量列數(shù)組實例 130 7.3 對象的數(shù)組 134 本章作業(yè) 137 第8章 圖片與文字 139 8.1 圖片 139 8.1.1 顯示圖片 139 8.1.2 圖片互動 143 8.1.3 圖片色彩設置 144 8.2 文字 147 8.2.1 使用字體 147 8.2.2 字符串 148 本章作業(yè) 150 第9章 視頻 151 9.1 播放視頻文件 151 9.2 實時視頻輸入 155 9.3 視頻互動特效 158 9.3.1 互動色彩調(diào)整 158 9.3.2 視頻馬賽克 159 9.3.3 色彩捕捉 161 9.3.4 版畫效果 166 本章作業(yè) 169 第10章 Minim音頻 171 10.1 播放音頻 171 10.2 聲音的視覺化 173 10.3 音頻輸入互動 179 本章作業(yè) 181 第11章 3D 183 11.1 3D簡介 183 11.2 3D圖形 184 11.3 3D空間旋轉(zhuǎn) 185 11.4 3D互動 187 11.5 參考案例 190 本章作業(yè) 192 第12章 Arduino與物理計算 193 12.1 Arduino簡介 193 12.2 Arduino與開關 195 12.3 Arduino與傳感器 197 12.4 光敏傳感器 200 本章作業(yè) 202 附錄A 203 后記 205 參考書目 206
|