# P5.js 進階程式藝術繪圖工作坊 - 色鉛筆、畫布與粒子系統 共筆 下一堂課投票:https://app.sli.do/event/xdn2wrNvqb2YTrMopWZccm/embed/polls/a8e84710-b35d-4a7b-b2c9-3544be73c962 https://www.accupass.com/event/2212090655252031682503 Slido: https://app.sli.do/event/xdn2wrNvqb2YTrMopWZccm 講師:吳哲宇(https://portaly.cc/cheyuwu) Portfolio: https://docs.google.com/presentation/u/2/d/1M_9nhD_f3Nrn6Kfknk3DFMTuryQX4chEVyFt-uGOu-0/edit ## 【Day1】 ### 前置準備 確認大家環境設置(線上、線下) * Hackmd * [Slido](https://app.sli.do/event/xdn2wrNvqb2YTrMopWZccm): 設定名字+測試 * Open Processing -> 作品都加上 ccworkshop2023 tag 同學帳號們 * 哲宇 https://openprocessing.org/user/139364 * 建安 https://openprocessing.org/user/326497 * chiao https://openprocessing.org/sketch/1794479 * Bugni https://openprocessing.org/user/290385?o=19&view=sketches * Zilong https://openprocessing.org/user/337112 * JackWu https://openprocessing.org/user/362371 * Lynn https://openprocessing.org/user/218715/ * Hanya https://openprocessing.org/user/306488 * Sandy https://openprocessing.org/user/222154 * CT https://openprocessing.org/user/232182 * Yu Lee: https://openprocessing.org/user/227384 * Ollie https://openprocessing.org/user/361108 * 志源: https://openprocessing.org/user/277076 * Yi-Chien https://openprocessing.org/user/231929 * Nathan Cheng: https://openprocessing.org/user/362484 * 士鋒 https://openprocessing.org/user/360530 * 勤旻 https://openprocessing.org/user/226347 * Momo: https://openprocessing.org/user/359701 * 1t:https://openprocessing.org/user/362580 * Pam Pan:https://openprocessing.org/sketch/1794475 * Gani https://openprocessing.org/user/362366 * Sanford https://openprocessing.org/user/346306 * Louise https://openprocessing.org/user/360273 * Hsuan https://openprocessing.org/user/232101 * Rex https://openprocessing.org/user/174946 * Jeremy https://openprocessing.org/user/293932 * Amber https://openprocessing.org/user/362583 * Loxi https://openprocessing.org/user/231528 * Tom https://openprocessing.org/user/362573 * Powei https://openprocessing.org/user/357738 * 有趣的爆開的字:https://openprocessing.org/sketch/1447920 ### 發想階段 #### 發想與設計 開始創作之前「確認主題」是很重要的事情,因此我們需要透過一些方法和途徑來發想跟刺激靈感 * 刺激靈感的話可以參考以下: 1. https://tender.art/ 2. https://www.fxhash.xyz/u/Che-Yu%20Wu 3. https://www.artblocks.io/ 4. https://www.artblocks.io/collections/curated/projects/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/233 5. https://www.fxhash.xyz/generative/slug/o-fortuna * 找 Moodboard 與參考 * 構圖 * 主題 * 色彩 * 構圖設計與草圖繪製 #### 同學們的靈感來源 (chiao) ![](https://i.imgur.com/qimAkri.jpg) ![](https://i.imgur.com/Qbk8wTZ.jpg) (hanya) https://tender.art/project/gravity's-end ![](https://i.imgur.com/BUducDb.jpg) https://www.artblocks.io/collections/curated/projects/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/334 ![](https://i.imgur.com/z0bwtBa.png) (CT) https://tender.art/project/tempus-fugit-1 https://tender.art/project/solace https://tender.art/project/eth/ringers-by-dmitri-cherniak (Rex) https://www.artblocks.io/collections/curated/projects/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/255?section=all%20items ![](https://i.imgur.com/JF6it1m.png) https://openprocessing.org/sketch/1795319 (Jack) https://tender.art/project/beyond-the-asteroid-belt/5 ![](https://i.imgur.com/8gv5oEh.png) https://tender.art/project/tempus-fugit-1/59 ![](https://i.imgur.com/YZKVVwe.png) https://tender.art/project/fluidynamix-cities (Lynn) ![](https://i.imgur.com/GCq2MyF.png) ![image alt](https://verse.works/artworks/4ee7b052-b104-458d-8c68-ed0a695b8ab3)(AMBER) https://tender.art/project/dream-forest/6 (Momo) ![](https://i.imgur.com/OSHMC0g.png) https://tender.art/project/ai-psychedelic-forest/8 (Momo) ![](https://i.imgur.com/eYbgD3q.png) https://www.fxhash.xyz/generative/slug/light-shape-and-color (Momo) ![](https://i.imgur.com/UmtSDb9.jpg) https://www.artblocks.io/collections/curated/projects/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/59 (Momo) ![](https://i.imgur.com/azXzmmY.png) https://www.fxhash.xyz/gentk/796969 (Momo) ![](https://i.imgur.com/d55FxiQ.png) https://tender.art/project/sprocket-factory/12 (Momo) ![](https://i.imgur.com/eqFgzf7.png) https://www.fxhash.xyz/generative/slug/light-experiment (Momo) ![](https://i.imgur.com/UOom8uQ.png) https://www.fxhash.xyz/gentk/slug/the-passing-of-time-4 (Momo) ![](https://i.imgur.com/n8IivN8.png) https://www.fxhash.xyz/generative/slug/trees.on.lake (Momo) ![](https://i.imgur.com/ge99heK.jpg) https://www.fxhash.xyz/generative/slug/organic-clusters (Momo) ![](https://i.imgur.com/bi379lf.jpg) ![](https://i.imgur.com/Ie0T5Cf.png) https://www.artblocks.io/user/0xd4947236067760d20d2473c73d4b89ef28dfa9b2 (Sanford) Bugni https://www.fxhash.xyz/generative/18175 https://www.artblocks.io/collaborations/artblocksxpace/projects/0x64780ce53f6e966e18a22af13a2f97369580ec11/4 https://tender.art/project/mina/1 (Louis) https://www.fxhash.xyz/generative/slug/the-binding-string (Nathan) (Powei) https://www.artblocks.io/collections/curated/projects/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/62 https://tender.art/project/horizon(te)s https://www.fxhash.xyz/generative/slug/geocollection (Jeremy) ![](https://i.imgur.com/CzznOzH.png) https://www.fxhash.xyz/generative/slug/under-the-microscope (Angus) ![](https://i.imgur.com/xR3hWix.png) https://www.fxhash.xyz/generative/slug/under-the-microscope (Angus) ![](https://i.imgur.com/xR3hWix.png) ![](https://i.imgur.com/dPs0dEo.jpg) https://www.fxhash.xyz/generative/slug/all-that-remains-1 ![](https://i.imgur.com/daGG3QG.jpg) https://www.fxhash.xyz/generative/slug/eucalyptus-and-sagebrush (Sandy) https://www.fxhash.xyz/generative/slug/water-17 ![](https://i.imgur.com/DRJiXIK.jpg) https://www.fxhash.xyz/generative/slug/aquarelle ![](https://i.imgur.com/uiXLthJ.jpg) (Zilong) https://verse.works/image/fullscreen/static%2F519992f3-a2b1-4e40-ad33-1537854048bd.png@webp ![](https://imgur.com/a/tkG008V.jpg) (士鋒) https://www.fxhash.xyz/generative/slug/glooder ![](https://i.imgur.com/Jkl4pgJ.jpg) https://www.fxhash.xyz/generative/slug/the-magic-of-color-and-light ![](https://i.imgur.com/ka87LVM.jpg) https://www.fxhash.xyz/generative/slug/rill ![](https://i.imgur.com/67CNRom.jpg) (YuLee) https://www.fxhash.xyz/generative/slug/curtains-2 ![](https://i.imgur.com/1g5Dq5K.jpg) https://www.artblocks.io/collections/presents/projects/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/275 ![](https://i.imgur.com/XEAOTV9.png) https://www.artblocks.io/collections/presents/projects/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/211 ![](https://i.imgur.com/zU4GYH3.jpg) https://www.artblocks.io/collections/presents/projects/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/241 https://www.pinterest.com/majerowob/color-pencil-idea/ #### 發想關鍵字 & Moodboard ![](https://i.imgur.com/ZNMcQYG.png) Slido: https://app.sli.do/event/xdn2wrNvqb2YTrMopWZccm/live/polls 關鍵字:design poster * #塗鴉 #暈染 #波紋 #細胞 #重疊 (哲宇) https://www.pinterest.com/majerowob/2023-%E8%97%9D%E8%A1%93%E9%9D%88%E6%84%9F/ ![](https://i.imgur.com/GdY1xuI.jpg) * #粒子 #螢光 #太空 #幾何 #3D #漂浮 (Powei) https://www.pinterest.com/cpxz520/generative-art/ ![](https://i.imgur.com/cym2lss.jpg[/img]) * #年輪 #森林 #沙漏 #光影 #鐘 #時間 #幾何 #有機 (Momo) https://pin.it/7cdvSs6 ![](https://i.imgur.com/rvQ6kes.jpg) * #月光海 #植物 #星空 #漁港 #極光 (chiao) https://pin.it/6k1LKUv ![](https://i.imgur.com/sdx3FFk.jpg) * #天宮之城 #煙火 #重覆生長 #銀河 #魔法 #有機線條 #分段線斷(Lynn) https://www.pinterest.com/doraemoncandyli/2023-idea-workshop/ ![](https://i.imgur.com/t4HxZXR.png) * #漂浮城市 #迷宮 #星球 #光軌 #反射 #cyberpunk #glitch #方塊 #外星小生物 (CT) https://www.pinterest.com/bulewind719/p5-workshop/ ![](https://i.imgur.com/h1qIeYs.jpg) * #高速公路 #火山 #粒子 #分割 #有機流動 (Rex) https://pin.it/25m3IRn * #流星 #鍵盤 #手機 #電影 #靈魂 #wifi #網路 #電腦 (Tom) https://pin.it/505Zpgj ![](https://i.imgur.com/RgdV05u.png) * #雲 #城市 #光線 #人物 #像素圖 (Sanford) https://www.pinterest.com/pin/681239881145106127/ https://www.pinterest.com/pin/3377768460019213/ https://www.pinterest.com/pin/199073246021943196/ ![](https://i.imgur.com/3qyMxKU.png) * #自然 #生物 #光暈 #錯視 #災難 (Nathan) https://www.pinterest.com/anbceeeeeqe/generative-ideas/ ![](https://i.imgur.com/5cjdo6P.jpg) * #礦物 #流體 #植物 #有機 #空間 (Jeremy) * https://www.pinterest.com/jeremychen2/2023-%E9%9D%88%E6%84%9F/ * ![](https://i.imgur.com/kZbM94t.jpg) * #細胞 #水族箱 #碰撞 # 試管 #city (1t) * 這件美術作品是一個細胞水族箱,裡面有各種形狀和顏色不同的細胞在碰撞碰撞。在這個小小的世界裡,細胞們像城市裡的人一樣,有著各種不同的活動和目的。這個作品通過試管的形式呈現了一個微小世界的多樣性和複雜性。(from chatgpt) * (備用: #mountain #水墨 #光影) * [pinterest](https://www.pinterest.com/708kelly/p5js/) * ![](https://i.imgur.com/5herqU5.jpg) * #Water drop #Water_flow #Watercolor_Smudge (Zilong) [moodboard](https://www.pinterest.com/b01501073/water/) * #海洋 #太空 #材質感 #樹群 #流動 (Sandy) https://www.pinterest.com/sansan0719/2023-ideas/ ![](https://i.imgur.com/5x6xwnF.jpg) * #空間切割 #電影 #人物 #爆炸 #透明感 #粒子流動(hanya) https://www.pinterest.com/amytrai/creative/ ![](https://i.imgur.com/5iMRqyv.png) * 蕨類|生長|拓印|粒子|樹皮|抽象化|無限生長|扭曲|藍曬 (Amber) https://www.pinterest.com/gsn965321/open-processing-material/?invite_code=dbe2d8464a2246e0b5434576c7755fa1 ![](https://upload.cc/i1/2023/01/14/peFm0h.png) ) * #城市 #鄉村 #生活圈 #建築 #結構 (Louis) https://www.pinterest.com/ycc933040685/ideal/ * #水母 #水草 #太空漂浮 #煙霧繚繞 #光影 #多肉 #生長 #蝸牛 #紙雕 #波光粼粼 (Pam Pan) https://pin.it/7dyLhRD ![](https://i.imgur.com/gF8wZN3.jpg) * #黑膠 #雨水 #漸層 #旋轉 #交錯 #飛碟 * https://www.pinterest.com/choycedesign/p5js-%E9%9D%88%E6%84%9F/ * #植物 #陽光 #重生 #溫暖 #成長 #大樹(JackWu) [https://pin.it/5SZ1cEk](https://pin.it/rrylQu9) ![](https://i.imgur.com/zD9qVWQ.png) * #彩煙 colorful smoke #酒精畫 #紙膠帶 #漣漪 #水彩 (Angus) https://www.pinterest.com/angus912584/2023-p5-workshop-idea/ ![](https://i.imgur.com/eTa2i1k.jpg) * #星系 #粒子月亮 #瞳孔 #變形蟲 #螢火蟲海 #山海月景 #羽毛花(Bugni) https://www.pinterest.com/sunnieqq17/%E7%94%9F%E6%88%90%E5%BC%8F%E8%97%9D%E8%A1%93%E9%9D%88%E6%84%9F2023/ ![](https://i.imgur.com/TI2oNC2.jpg) * #普普風 #馬賽克 #藍曬圖 #毛玻璃 #核融合 #花海 #塗鴉 (士鋒) https://www.pinterest.com/jarvischao/p5js/ ![](https://i.imgur.com/PItol0h.png) * #海洋 #線條 #花 #銀河 #幾何 #蝴蝶 (Yi-Chien) https://www.pinterest.com/kevinyichienlee/2023/ ![](https://i.imgur.com/SxpXyZB.png) * #線 #幾何 #粒子 #模糊 #液體流動 (yulee) https://www.pinterest.com/a970192/ccworkshop/ * #動態文字 #水波 #點陣圖 #星空 #線條 #大樹 (Louise) https://www.pinterest.com/tpfsakura/fonts/ ![](https://i.imgur.com/uofdCJV.jpg) * #雲 #天空 #星空 #風 #海洋 #光影 https://www.pinterest.com/huahsuank/pins/ * #花草 #光斑 #礦物切面 #漸層水泥 #Aesemic (Min) * https://www.pinterest.com/b10610003/p5/ * #wave #liquid #particle #flow #water 同學分享用 chatGPT 做關鍵字: ![](https://i.imgur.com/0XSqfa7.png) #### 發想方法 有關鍵字之後,可以透過紙筆隨意畫六小格來簡單的塗鴉構思,這個階段不用深思 ### 基礎繪製 - 粒子與物理性質控制 - 核心概念就是控制粒子的位置(p)、速度(v)以及加速度(a)來達到各種有趣效果 - https://openprocessing.org/sketch/1243356 - 產生器 - https://openprocessing.org/sketch/1217113 ![](https://i.imgur.com/2N9GP3Q.jpg) - 隨機性與規律性:自然亂數、布林噪聲與三角函數 ![](https://i.imgur.com/acvdQ6G.png) 可以透過一些隨機數,如 `random()`、`noise()`及帶有規律性的 `sin()`、`cos()`等來控制粒子的位置、速度、加速度來獲得一些有趣變化 - 軌跡、重複與韻律 - background https://openprocessing.org/sketch/897428 - 演算法 - 遞迴 細化 數學 - https://openprocessing.org/sketch/915717 - function div() - 粒子分裂 - 隨機偏移 ```javascript= // 生成粒子的模板定義 Code // class Particle{ constructor(args){ let def = { p: createVector(0,0), v: createVector(0,0), /* 粒子的預設屬性資料 */ a: createVector(0,0), r: 30, } Object.assign(def,args) Object.assign(this,def) } draw(){ /* 粒子如何畫自己 */ push() translate(this.p) circle(this.p.x,this.p.y,this.r) pop() } update(){ /* 粒子如何更新自己的資料(如位置、速度等) */ this.p.add(this.v) this.v.add(this.a) this.v.mult(0.9995) } } ``` #### 語法小知識 `let` 變數 https://p5js.org/reference/#/p5/let `createVector()` https://p5js.org/reference/#/p5/createVector `push()` https://p5js.org/reference/#/p5/push `pop()` https://p5js.org/reference/#/p5/pop `frameRate(fps)` https://p5js.org/reference/#/p5/frameRate `for` (計數變數的起始狀態; 結束條件; 每次結束後變數如何變化) { 概念相同,需要重複執行的事情 } `filter(filterType, [filterParam])` https://p5js.org/reference/#/p5/filter `image(img, x, y, [width], [height])` https://p5js.org/reference/#/p5/image `setAlpha(alpha)` https://p5js.org/reference/#/p5.Color/setAlpha `noise(x, [y], [z])` https://p5js.org/reference/#/p5/noise `pixelDensity(val)` https://p5js.org/reference/#/p5/pixelDensity `randomSeed(seed)` https://p5js.org/reference/#/p5/randomSeed `noiseSeed(seed)` https://p5js.org/reference/#/p5/noiseSeed `map()` https://p5js.org/reference/#/p5/map `split()` https://p5js.org/reference/#/p5/split `draw()` https://p5js.org/reference/#/p5/draw `update()` https://p5js.org/reference/#/p5.PeakDetect/update ```javascript let particles = [] for(let i=0;i<10;i++){ /* 根據 Particle 模板生成一個新粒子 */ let newP = new Particle() /* 將這個新粒子放進陣列清單 particles 以供我們取用 */ particles.push(newP) } ``` ### 0114 Demos Demo 1 粒子線條 https://openprocessing.org/sketch/1794552 Demo 2 樹枝 https://openprocessing.org/sketch/1794636 Demo 3 漸層延伸 https://openprocessing.org/sketch/1794673 Demo 4 點雲筆刷 https://openprocessing.org/sketch/1794725 Demo 5 材質 https://openprocessing.org/sketch/1795213 Demo 6 Blur https://openprocessing.org/sketch/1795286 - 有關 CSS 的 Filter 可以參考:https://developer.mozilla.org/zh-CN/docs/Web/CSS/filter Demo 7 粒子力場 https://openprocessing.org/sketch/1795317 https://in.pinterest.com/pin/474074298273689066/ https://openprocessing.org/sketch/779854 ### 材質 <!-- https://openprocessing.org/sketch/1615614 --> - 點雲與機率 - ![](https://i.imgur.com/8PQjRUK.jpg) ![](https://i.imgur.com/0QAYRjR.png) - random(random(random())) - 材質處理 - `loadImage()` 載入圖片→用 `image()` 疊上去→用 `blendMode(MULTIPLY)`(記得用 push/pop包裹) 調整疊層關係 - overallTexture 產生材質 ```javascript overAllTexture = createGraphics(width,height) overAllTexture.loadPixels() for(var i=0;i<width+5;i++){ for(var o=0;o<height+5;o++){ /* 設置 overAllTexture 的格子點像素資料 through 隨機的灰階 */ overAllTexture.set(i,o,color(120,noise(i/10,o/10)*random([0,0,0,0,10,20]))) } overAllTexture.updatePixels() ``` - 輕畫布材質 - shader材質 - 各種筆刷製作 - 筆刷 Class - 旋轉角度 #### canvas 材質 - 材質圖片: https://openprocessing-usercontent.s3.amazonaws.com/files/user139364/visual1616300/h2c259fdd4b3433192527941e79e7dcc8/canvas-light.jpeg Template: Point與筆刷製作 * 水彩材質 https://openprocessing.org/sketch/1617186 * 粉彩材質 https://openprocessing.org/sketch/879891 * https://openprocessing.org/sketch/1753524 * 炭筆 https://openprocessing.org/sketch/1779447 * 色鉛筆 https://openprocessing.org/sketch/1749574 ### 色彩 - 色彩模式與處理 - rgb / cmyk - 對顏色做調整 set rgb / alpha - 顏色的透明度 - 參考色票與漸進色 - cooler - 照片取色 - 對比取色 - 相近色 - 疊色 - blendMode - Color Grading 顏色對應轉換 - lerpColor 的 線性轉換 配色好幫手 → https://coolors.co/ ```javascript! // 將 hex 字串快速做成陣列的作法 let colors = "562c2c-f2542d-f5dfbb-0e9594-127475" colors.split("-") /* 將原始的字串素材以 - 為界切成陣列 */ .map( str => "#" + str ) /* 對映成有 # 的陣列 */ ``` ### 印刷 講師:曾煜仁 - https://drive.google.com/file/d/1hBmrGYKVaQyUTfkGsUQEz2-JTIHCw1Hb/view?usp=sharing ### 視覺效果 - 濾鏡與扭曲 https://openprocessing.org/sketch/1713192 - 模糊與光暈 - canvas filter ``` drawingContext.filter =`blur(10px)`; ``` - 粒子雜訊化 Template: Shader + p5 畫布 - 陰影 ``` drawingContext.shadowColor = color(0,50) drawingContext.shadowOffsetX = 3 drawingContext.shadowOffsetY = 3 drawingContext.shadowBlur = 10 ``` --- ## 【Day2】 **第二天大綱** * local * canvas 材質 * 作品分析 * 材質感 * 畫布位移跟額外的畫布 * 模糊與光暈 * 過shader濾鏡原理 #### Local端開發 - 下載安裝 [VSCode](https://code.visualstudio.com/Download) - 在 VSCode 加入 `live server` 擴充功能 - ![](https://i.imgur.com/tCBmg14.png) --- ## 輸出 - Canvas size (比例) - A4: 703*983 pixel - Photo: 583*420 pixel - Pixel Density - 輸出至少設定成 `pixelDensity(5)` - 設備性能夠的話可以設 `pixelDensity(8)` - 選作品 - save() - 如果背景沒有透明度,建議儲存成 JPG (檔案會比 PNG 小) - `save(name.jpg)` **輸出實品尺寸(出血 3mm)** - A4 輸出:186mm * 260mm - Photo 輸出:154mm * 111mm **示意圖** - a4 兩張: ![](https://i.imgur.com/33h0Uey.png) - photo 四張: ![](https://i.imgur.com/S7vW3Le.png) --- ### 互動與資料來源 - 引用資料來源進行創作 - 引入JSON檔案 - 滑鼠 鍵盤 聲音 互動效果 - mouseX/mouseY ## 同學作品集合區 --- 哲宇 https://openprocessing.org/sketch/1795317 作品名稱: 描述: ![](https://i.imgur.com/zlpkqxU.jpg) ![](https://i.imgur.com/yYlzcWl.jpg) --- Nathan Cheng 作品名稱 描述:血滴加上龍捲風 https://openprocessing.org/sketch/1795431 ![](https://i.imgur.com/7YbxxkV.jpg) --- Powei 作品名稱: 描述:線條飄來飄去 https://openprocessing.org/sketch/1795454 ![](https://i.imgur.com/fpGT4ZA.jpg) ![](https://i.imgur.com/jDd5xKo.jpg) --- CT-22 https://openprocessing.org/sketch/1795427 作品名稱:塗鴉隧道 描述: 原本想做海洋的漂浮感,試了幾次效果沒有很好,後來嘗試的時候意外發現重複畫布慢慢縮小有種透視感的感覺,像是往前的隧道。 ![](https://i.imgur.com/2VUMVQT.jpg) ![](https://i.imgur.com/Pjsb3JI.jpg) --- 士鋒 https://openprocessing.org/sketch/1795382 ![](https://i.imgur.com/viBSKj6.png) 作品名稱:夏日祭典 描述: 逐漸生長及綻放,像祭典般歡慶舞動著、釋放的煙花點亮著草坪,整體交接成日式和服碎花布 --- 1t [星軌](https://openprocessing.org/sketch/1795235) 沙子/軌道 ![](https://i.imgur.com/YXeiX5H.jpg) ![](https://i.imgur.com/ScNXOA2.jpg) --- Pam Pan 作品名稱:嘿嘿 聽說是仙人掌 創作方式:嘗試使用粒子系統製作仙人掌 https://openprocessing.org/sketch/1795401 ![](https://i.imgur.com/HFA9ibX.jpg) --- Lynn https://openprocessing.org/sketch/1795237 意外變成的圓,原本想做像梵谷星空那種線條感,但沒辦法好好控制想轉換的方向,就選轉了整張畫布,變成這個形狀XD 加上上課說的材質和顏色,希望有手繪粉臘筆的感覺 ![](https://i.imgur.com/FYMk72U.jpg) --- 27-Jack https://openprocessing.org/sketch/1794647 ![](https://i.imgur.com/zywBTfo.png) --- 15-chiao https://openprocessing.org/sketch/1794479 心流|其實本來想做月光海、極光等等之類很浪漫抽象的圖樣,但程度不夠,只能先把課堂實作的某個段落(粒子材質)嘗試操作其他顏色和位移的數值,意外得到的作品。 ![](https://i.imgur.com/oeqaR6j.jpg) --- Amber https://openprocessing.org/sketch/1795410 https://openprocessing.org/sketch/1795376 ![](https://i.imgur.com/RhQErNr.jpg) ![](https://i.imgur.com/PbnCGap.jpg) 1.森林與沙丘 2.蕨,以藍曬圖的風格模仿家裡盆栽蕨類垂墜的感覺 --- Louise 作品名稱:夜楓 https://openprocessing.org/sketch/1795368 ![](https://i.imgur.com/sxG973k.png) --- Angus 作品名稱:Music Visualization \ 描述:嘗試載入音樂檔案,取得頻譜圖、音樂總秒數、Centroid 頻率,影響粒子軌跡、顏色。原本預期想做到彩色雲的效果但卡住了,所以只做基本的粒子換色亂跑。有個已知問題是粒子顏色隨著時間會趨於一致。 https://www.pinterest.com/pin/751538256586808693/ https://openprocessing.org/sketch/1794868 ![](https://i.imgur.com/tfpfHyq.jpg) --- Sandy https://openprocessing.org/sketch/1795400 作品名稱:flow\ 描述:原本想嘗試做出類似色鉛筆筆刷感,來不及完成則依目前嘗試進度,讓程式產生出類似地形的流動感 ![](https://i.imgur.com/JemY7Zo.jpg) ![](https://i.imgur.com/hpcDo5p.jpg) ![](https://i.imgur.com/cpjmPsL.jpg) ![](https://i.imgur.com/JarkJYx.jpg) --- Yi-Chien https://openprocessing.org/sketch/1795387 ![](https://i.imgur.com/bsYTqx4.jpg) --- Jeremy 作品名稱: YUAN \ 平塗的圓渲染的圓~ https://openprocessing.org/sketch/1795425 ![](https://i.imgur.com/oWWMlOG.jpg) ![](https://i.imgur.com/IAuBN0F.jpg) ![](https://i.imgur.com/tMgESUN.jpg) ![](https://i.imgur.com/D3XUmrq.jpg) ![](https://i.imgur.com/vMwscvX.jpg) --- Rex https://openprocessing.org/sketch/1795402 ![](https://i.imgur.com/4EwPUcQ.jpg) --- Min 勤旻 https://openprocessing.org/sketch/1795453 古老壁畫: 嘗試在不同塗層結合噴漆、粉彩筆刷和暈染材質,同時加入細小刮痕與隨機塗樣,堆疊出壁畫質感。 ![](https://i.imgur.com/IY4qYma.jpg) ![](https://i.imgur.com/cFPTP3b.jpg) --- Yu Lee https://openprocessing.org/sketch/1795422 ![](https://i.imgur.com/NYqnSF5.jpg) ![](https://i.imgur.com/14j4V1d.jpg) --- hsuan https://openprocessing.org/sketch/1795392 ![](https://i.imgur.com/z8HkmbJ.jpg) --- loxi https://openprocessing.org/sketch/1794487 --- Sanford https://openprocessing.org/sketch/1795325 https://openprocessing.org/sketch/1795437 --- ## 延伸閱讀 The Nature of code https://natureofcode.com/book/ ## 筆記 ### 可參考靈感的NFT網站資源 * https://www.fxhash.xyz/: 上架成本較低,比較多實驗性的作品 * https://www.fxhash.xyz/u/Che-Yu%20Wu * https://www.artblocks.io/ * https://tender.art/: 有比較多精緻的作品 ### 靈感流程 1. 先想關鍵字 Ex.可以從 design poster 找 2. 在Pintrest找靈感圖版 3. 繪製草圖 ### 粒子效果的觀念 1. 放在什麼位置(p) 2. 速度 (v / a) 3. 有什麼變化 ### Class的用法 draw -> 跟位置無關的程式 update -> 位置 * 粒子移動 粒子跟粒子移動之間的速度(v) 使其剛好貼近,就會成為連續性的線條 漩渦狀:邊前進邊旋轉 透過點擊滑鼠設定每次初始位置 if (mouseIsPressed){ 光暈 blendMode https://p5js.org/reference/#/p5/blendMode --- ## 如何匯出作品 - Pixel Density - 寬高比調整 - 選作 ## 印刷 ### 傳統印刷 vs 數位印刷 的印刷流程 創作作品 -> 印前置程 -> 印刷 -> 印後工加工 -> 輸出 ### 印刷顏色 1. CMYK -> 傳統印刷 2. RGB -> 廣域印刷,通常會跟實際印出來點差異 * . 螢幕色 & 實際印刷色 會有差 4. 特殊色:某個顏色要特別處理 ex.金色、銀色.. 5. 色票: Pantone (主流) / PCCS ,實體卡片和印刷廠溝通用 ### 印刷種類 * 平版印刷:最主流的印刷,適合大量印製 * 數位印刷:與商用雷射印刷類似,可以印比較小量 ![](https://i.imgur.com/cHJkS3n.png) * 網版印刷:Riso(近年文青市集很常用),適合印小量精緻印刷品,缺點:一色一版,很容易會有偏移的問題 * 推薦印刷店:北車retro印刷Jam * 凸版印刷: * 能做出各種特殊精緻的效果 * ex. 燙金邊 * https://jese-infini.com/2015/03/12/%E5%8D%B0%E5%88%B7%E5%8A%A0%E5%B7%A5-%E7%83%A4%E6%9D%BE%E9%A6%99/ * 熱轉印/熱昇華 * 可以印在大部分的物品 ex.印在馬克杯、衣服..etc * 藝術微噴 * 這次工作坊會用 * 數位印刷一種 * 要特殊紙張才能用(紙頗貴QQ) * 適合印相片、數位作品 * 印製時間長、成本高、不適合用來印大量 ### 紙張 * 紙選對了就成功了一半,不要小看他XD #### 塗布紙 Coated Paper * 印起來比較漂亮 * 顏色比較飽和 #### 非塗布紙 Uncoated Paper * 比較有紋路的紙,屬於非塗佈紙 https://www.mindscmyk.com/2020/10/07/pre-printing-knowledge-20-coated-uncoated-paper/ ![](https://i.imgur.com/sUgzX0X.jpg) #### 磅數 * 通常印90磅以下,方便閱讀 * 卡紙用200磅以上 #### 無酸紙 * ex. 報紙 * 可以保存很久 * 價格比較貴 ### 印刷前要注意 以圖層分,並標示其功能 1. 色彩模式 (確認CMYK/RGB再進行使用) 2. 出血: (留3~5mm防止裁切) 3. 解析度&尺寸 4. 文字建立外框 (但我們這次應該比較不會碰到,情況:文字會跑掉or掉字,需轉為外框) 5. 解析度dpi起碼要300dpi以上 ### 色彩 RGB( R紅、G綠、B藍):數值的範圍從0(純黑色)-255(純白色) HSB( H色相、S飽和度、B明度):數值的範圍從0-360 ### 循軌跡移動的 Perlin Noise 1. 空間中放粒子 2. 在空間中給連續的力量 3. ### 印刷前置設定 1. 長寬 2. pixelDensity(val) 3. 300dpi 4. 確保作品樣式一樣randomSeed(seed) noiseSeed(seed) 5. 滑鼠右鍵檢查長寬 6. `keyPressed()`編寫以s存下當下滿意畫面 ```javascript! function keyPressed(){ if(key == "s"){ save() } } ``` 預設存檔為.png,建議改為.jpg The Book of Shaders https://thebookofshaders.com shader template https://openprocessing.org/sketch/1572139 cnoise TOUCHDESIGNER https://derivative.ca/ 生成式聲音可以用的軟體 max/msp https://zonesoundcreative.com/maxstep01/ p5.sound也可以參考 https://openprocessing.org/sketch/611472 zonesound https://zonesoundcreative.com/ https://zonesoundcreative.com/maxstep01/ 整合進前端專案 https://www.npmjs.com/package/p5 * 最簡單的方法 -> iframe直接嵌入 * 要真的把code全部整進去前端的話 ->instance mode * https://p5js.org/reference/#/p5/p5 硬體規格 * GPU 30以上的都OK 常見的生成藝術創作技巧:遞迴 https://openprocessing.org/sketch/868722 偵測骨架工具 https://learn.ml5js.org/#/reference/posenet 多投影機串接畫面 touchedesigner也可以分割投到不同投影機畫面 國外光雕投影常用 -> https://madmapper.com/ p5.js 怎麼demo? * openprocessing * 錄影 * 螢幕錄影 * https://github.com/calebfoss/p5.videorecorder ### Q&A 台灣工作機會? - 台灣互動設計公司滿多的:版塊、參式、黑洞.. - 常應用在商案活動網頁互動特效、VJ 等 - p5.js 適合小專案,大型畫布的效能不佳 - https://creativecoding.in/resources/