Creative Coding 創意 + 技術的世界
作者是MixLab無界社群成員:
ML07-Fangyex/徐方燁-Designer / Creative coder
歡迎跟方燁交流 Creative coding相關技術跟創意 噢~可以在文末關注他的個人公眾號。 以下為正文:
def CreativeCoding(創意,技術):
一直以來,工程師和藝術家之間是涇渭分明的。
兩種職業所需的背景知識、學習路徑、成長曲線都不一樣。一個需要理性地看待世界,從現實的約束條件下尋求解決問題的最優方案,另一個需要發散想法、打破邊框,找到自然中那些能夠感動人心的事物帶給大眾。
就拿我所從事的網際網路行業,程式員和設計師之間的思維模式很多時候都非常不一樣(互動設計師/產品經理可能是介於程式設計師和視覺設計師兩者之間的存在)。當設計師在思考如何讓產品更加性感的時候,程式設計師可能更加在意的是怎樣讓產品的效能更加穩定,而這兩種都能讓產品變得更好的事情分明就是兩個截然不同的努力方向。
但是有這樣一群人。他們可能是程式設計師,也可能是設計師,不過他們並不是很在意自己所謂的背景。他們更關心的是怎樣綜合地調動兩方面的知識,進行更加「高階」的創作。
他們既要有一些基本的設計知識和美學素養,也要能夠充分利用程式開發中的種種技巧來幫助實現頭腦中的創意想法。這群人給自己起了一個名稱叫「Creative Coder」。
維基百科上面已經有人對Creative Coding做了解釋:
Creative coding is a type of computer programming in which the goal is to create something expressive instead of something functional.
翻譯一下,大致意思是說Creative Coding可以算作計算機程式設計的一種方面,但是相比於解決功能性的問題,它更偏向於創造出那些具有很強的表達性的東西。
畢業至今,我一直是以設計師的職業從事工作。但是從學生階段開始就對程式設計感興趣,對程式設計的學習和實踐也從來沒有斷過。因此我一直也有在關注Creative Coding方面的相關人物、作品以及專案。
這個領域也許國內的程式設計師/設計師不算太瞭解,至少在我工作的幾年裡,身邊程式設計師和設計師的分界線是比較明顯的。偶爾有對設計感興趣的程式設計師,會跟我聊起介面設計的種種話題,也遇到了像Mixlab創始人志煒這樣逆天的全棧程式設計師+設計師。但是更多的時候,大家在日常中所經手的工作還是會本分地留在自己的專業領域。
這本身並沒有問題。我也一直篤信專業的分工能夠帶來更高的效率、更大的價值,是我們今天這個時代人與人之間協作所必須採取的組織形式。 但是在創新的方面,如果想要創造出前所未有的事物,有的時候,則需要有一些跨界,需要多瞭解一下其他方面的專業知識。
圖片來自Uber公司的資料視覺化團隊負責人:http://philogb.github.io/
資料視覺化常常也被認為是Creative Coding的一類工作
但會更加嚴謹和學術一些,而且需要更多地考慮使用者體驗
創意程式設計師
放眼海外,歐美、日韓有很多這種Creative Coder,他們的職業甚至就是專門使用程式碼來構建充滿想象力的空間。
從這篇文章開始,打算隔三差五地寫寫我平時經常關注的那些全球的創意程式設計師(Creative Coder)們。他們中很多人的作品、專案非常的值得玩味,既充分利用了前沿的計算機技術、作品本身還具有非常高的美學或藝術價值。
只是很多時候,由於我們目前所處在的這堵牆裡,不是很容易能夠看到他們的成果。(就連Behance現在都被牆掉了,一聲嘆息)。
今天先來介紹一個我一直關注的大神,Matt DesLauriers。
看他在Twitter上的自我介紹會發現,這名充滿藝術氣質的英國人平時正是以Creative Coder自居的。另外,他還給自己打上了Generative Artist,生成藝術的標籤。的確是這樣,Creative Code中的一個很大的分支就是生成藝術。
他將自己做過的專案分別放在了Behance、Vimeo等平臺上,他的個人主頁算是瀏覽他專案的一個集中入口:www.mattdesl.com
他的作品通常都會給人一種「雕塑感」。擅長利用點線和光影,貼幾個他的作品感受一下:
圖片擷取自 Matt DesLauriers 的 Behance作品
這位仁兄甚至還專門開了自己的網店,售賣自己的作品:
圖片擷取自 Matt DesLauriers 的 Behance作品
一幅作品35...英鎊,好吧,我相信這是有市場的。 有些作品看起來真的還是很有藝術價值的,比如下面這一幅《Crystal Towers》:
這是他利用生成藝術演算法,進行的某種城市資料視覺化的嘗試,展現了一座城市的中心區域,各個摩天大樓的高度比例。圖中左側為悉尼,右側為上海,是不是還挺耐看的。
Matt DesLauriers 除了致力於將設計和技術做融合之外,也是一名比較有開源精神的開發者。他在Github上面有很多高star數的專案。比如說下面這個目前還在維護的專案Canvas-Sketch:
這是一個能夠方便人們在瀏覽器環境通過JS和Canvas進行生成藝術創作的工具。它提供了一個非常便捷的初始條件,不用考慮過多的開發環境的事情,可以快速地上來讓人試驗創作想法。
下面是我用他提供的工具,重製了一下自己之前的2d-canvas的小作品。
他的另一個高Star專案,是一個結合了Node.js和Canvas的隨機藝術生成器。
此外,我還發現這位仁兄不光平時各種專案做的溜,而且還特別喜歡知識的積累和產出。在他的個人部落格上,有大量的講解自己專案的文章,隨便看看都是乾貨滿滿:
對他的介紹就到這裡。考慮到微信公眾號是一個傳播資訊的地方,在這裡放太多深入的講解尤其是貼程式碼的話,並不適合閱讀,因此針對這些大神的各種乾貨教程,我最近也考慮在知乎或簡書這樣的地方專門開闢一塊空間,做一些搬磚工作。
可以說從計算機圖形學成為一個單獨的學科門類開始發展的那天起,就伴隨著產生了Creative Coding這個有趣的分支。早在上古的1960年代就有先驅程式設計師們嘗試利用程式設計來製作藝術效果,十幾年前Flash大行其道的時候,也能夠在網上看到大量的ActionScript寫出的動人特效,今天則是利用Arduino、Processing、Canvas、WebGL甚至VR、AR等時髦的技術,在效能更加優越的計算裝置上創造更加豐富的效果,明天會不會就是利用AI來進行更加突破腦洞的創作呢?
一旦進入這個領域,你將會被藝術、演算法、Github、開源等等這些豐富有趣的事物所環繞。開啟別有洞天的一個世界。
最後放一張圖:
這張圖引自維基百科,是1980年代,在一款叫做《Breakout》的電視遊戲中,程式設計師們用演算法創造的glitches視覺特效。
希望感興趣的朋友能夠喜歡今天的內容。
return 開啟新世界
關於MIXLAB
MIXLAB 無界社群 是一所面向未來的實驗室,它提倡“ 跨界創新,開放成長 ”的理念。
—— 跨界 開放 互助 學習 思維 創新。
目前社群彙集了 25000+ 跨學科人群,主要來自GoogleBrain、微軟、華為、阿里魯班、騰訊、曠視、三角獸、物靈科技、眾安保險、美團、360等科技人才、設計師及CEO和投資人;
高校分佈MIT、Oxford、Cambridge、CMU、UoM、清華、北大、復旦、上交大、同濟等學生及教師群體;
學科跨越機器學習、自然語言處理、量化交易、物聯網、區塊鏈、前端、後端、產品經理、UI設計、建築設計、服裝設計、珠寶設計、音樂、藝術等。
詳細介紹 點選以下卡片:
mixlab期待您的加入!
讓你具備無限可能……