這是歷史版本頁面 — 看 Processing (64-bit) 最新版本

不會寫程式也想做視覺作品?Processing 能幫你什麼

Processing (64-bit) 軟體圖示 Processing (64-bit) 3.4 (64-bit) 資料更新 2018-07-27 閱讀約 8 分鐘

你大概遇過這種時刻:腦子裡有一個畫面——流動的線條、會變化的色彩、隨著滑鼠動的圖形——但你打開程式編輯器,看到一片空白,不知道從哪裡開始。你聽過「寫程式」可以做出這些東西,可是那些語法、括號、分號,看起來像另一種語言,還沒開始就覺得自己做不到。或者你其實會一點程式,但每次想做出「看得見」的東西,都得先搞懂視窗、繪圖函式庫、事件處理,光設定環境就耗掉半天力氣,原本的靈感早就涼了。

一般人遇到這種狀況,直覺是去找教學影片或買書來啃。但傳統的程式教學往往從「計算機概論」開始,講變數、講迴圈、講陣列,跟你真正想做的「畫出一個會動的東西」距離很遠。另一條路是直接用現成的繪圖軟體,但那些工具做出來的是靜態圖片,不是互動作品。這中間其實缺了一種東西:一個讓你把「想法」直接變成「視覺」的環境,不用先懂一堆底層原理,而是用簡單的指令就能在畫布上畫出東西、讓它動起來。這就是這類「創意程式設計」工具切入的點——把程式語言和繪圖畫布綁在一起,讓你寫的第一行程式就看得見結果。

01Processing 到底是做什麼用的?

它是一套開放原始碼的程式語言加上整合開發環境,主要給視覺藝術、設計和創意程式設計使用。你可以把它想成一個「程式塗鴉本」——打開之後有一個編輯器、一個訊息列、還有一個顯示圖形的畫布。你寫的每一行程式碼,幾乎立刻就能在畫布上看到對應的圖形或動畫,適合用來做互動圖形、資料視覺化、動畫和數位藝術的原型。

02完全沒寫過程式的人,用這套軟體學得起來嗎?

它的語法設計得比一般程式語言簡化,官方文件也說目標是讓幾乎沒有程式經驗的人也能上手。你不需要先懂「物件導向」或「資料結構」,只要會用幾個基本指令——例如畫一條線、設定背景顏色、讀取滑鼠位置——就能開始做出會動的東西。內建編輯器有語法標色、自動補齊和錯誤偵測,寫錯的地方會提示,對初學者來說門檻相對低。

03用它可以做出什麼樣的作品?

常見的輸出有幾類:2D 和 3D 的互動圖形、動畫、PDF 輸出,以及透過 OpenGL 加速的立體場景。官方提到有超過一百個擴充函式庫,涵蓋影像處理、資料視覺化、互動設計等領域。實際應用上,有人做 generative art(生成藝術)、有人做互動裝置、有人把資料畫成圖表,也有人用它做教學用的模擬。具體能做到什麼程度,取決於你願意花多少時間熟悉它的函式庫。

04它寫出來的東西可以變成獨立的應用程式嗎?

可以。官方問答明確說,你可以把寫好的 sketch(草稿)匯出成可執行的檔案,拿去別台電腦上執行,不需要安裝 Processing。這表示你做完一個互動作品,可以包裝起來給別人用,或放到展覽現場的電腦上跑。不過匯出後的執行檔大小和效能,會跟你的程式複雜度有關,這點要自己實測看看。

05它支援 3D 圖形嗎?

支援。它內建 3D 繪圖的函式庫,可以建立 3D 圖形和動畫,也有 OpenGL 整合來加速 2D 和 3D 的渲染。如果你之前用過其他 3D 工具,會發現它的 3D 指令相對單純,適合做概念驗證或互動原型。但要注意,官方資料也提到,複雜的動畫和模擬在效能上可能會有瓶頸,所以如果是重量級的 3D 專案,它不一定是最佳選擇。

06我是平面設計師,只會用 Illustrator 那類工具,這套適合我嗎?

如果你平常的工作是靜態視覺,Processing 的切入點不太一樣——它不是拿來取代繪圖軟體,而是讓你能用「程式」的方式產生圖形。這對擅長視覺但不會寫程式的人來說,確實是一條進入互動和生成藝術的路。它的社群裡有很多設計師和藝術家,教學資源和範例很多,你可以從改別人的範例開始,慢慢理解程式怎麼控制圖形。但如果你要的只是快速產出靜態海報,它不會比 Illustrator 快。

07我想拿它做商業或專業專案,可行嗎?

官方說法是可以,特別是資料視覺化、數位藝術和互動裝置這幾個領域。很多藝術家和設計師用它做原型,甚至直接用在展覽或商業案子上。不過要注意,它本質上還是偏向原型和實驗,官方也承認在大型專案的擴充性有限。如果你的專案需要複雜的軟體架構、多人協作或高效能運算,可能得考慮其他更完整的開發環境,或把 Processing 寫的東西當作前端展示,後端另外處理。

08它跟 Python 或 Arduino 比起來,差在哪裡?

這幾個工具的定位不同。Python 是通用程式語言,能做的事很多,但沒有內建視覺畫布,你要另外裝繪圖函式庫;Arduino 是給硬體開發用的,寫的程式控制的是實體電路板,不是螢幕上的圖形。Processing 的強項是「程式碼直接對應視覺輸出」,你不需要先架設環境就能畫圖。如果你主要想做螢幕上的互動視覺,Processing 的學習路徑比較直接;如果你要的是資料分析或控制硬體,那 Python 或 Arduino 才對口。

09它的介面只有英文,不會英文會不會很難用?

介面語系確實只有英文,這點要先有心理準備。不過它的介面很簡單,主要就是編輯器、訊息列和畫布三個區域,按鈕不多,就算英文不好,看圖示和選單位置也能猜個七八成。真正會卡住的是看官方文件和範例註解,那些都是英文。如果你英文閱讀有障礙,可以找中文的教學書或線上課程,中文社群有不少人寫過入門教材,但官方文件還是以英文為主。

10我的電腦效能普通,跑得動嗎?

官方說系統需求很低,大多數現代電腦都能順暢執行,包括資源有限的機器。因為它本質上是一個編輯器加上繪圖視窗,啟動和基本繪圖都不太吃資源。但這是指「簡單的程式」——如果你寫了很複雜的動畫、用了大量粒子或 3D 場景,效能就會開始下降。官方資料也提到,複雜動畫和模擬可能會有效能問題,所以如果你的專案很吃重,建議先在自己的電腦上測試看看。

11它跟 p5.js 或 openFrameworks 有什麼關係?

這幾個是「同家族」的工具。p5.js 是受到 Processing 啟發的 JavaScript 函式庫,跑在瀏覽器裡,做出來的東西可以放上網頁;openFrameworks 是 C++ 寫的創意程式設計工具包,效能更好但學習門檻更高。Processing 本身是 Java 語法,跑在桌面應用程式。如果你之後想把作品放到網路上,可以學 p5.js;如果需要高效能互動裝置,可以往 openFrameworks 走。Processing 比較適合當起點,因為語法簡單、資料多。

12這套軟體還在持續更新嗎?

根據收錄的版本紀錄,它從 2016 年開始陸續有版本釋出,最近一年內有 4 次更新,近兩年有 8 次,看起來是持續在維護的專案。官方也提到社群很活躍,教學資源和範例很多。不過要注意,它畢竟是開放原始碼專案,更新節奏不像商業軟體那麼固定,如果你需要某個新功能,可能要等社群釋出,或自己找替代方案。目前看起來不是那種放著不管的軟體。

下載與官方連結

前往官方網站 下載 Processing (64-bit)

processing-3.4-windows64.zip · 122 MB · 連結指向軟體原廠

版本紀錄

再看 5 筆

看完整版本清單

這一版改了什麼

What's new in this version:

- We've had trouble on Windows when MS Security Essentials or Windows Defender decides to defend your machine from our software, removing files from the  download and making Processing unusable. A few extra checks have been added so that more helpful warnings can be conveyed when this happens
- The other important fix is better handling in the Contributions Manager  for sites that use https. This fixes Python Mode installation, and many others that have recently started reporting "Could not find a ... in the downloaded file" when installing a Library, Mode, Tool, or Example set
- We're also bumping the release to 3.4 because of a lot of additions, plus some internal changes that have an impact on API