Motion Sculpting:一種新的動畫範式 — BCON26(第 4/5 段)


🏦 台灣Pay 銀行轉帳 💙 PayPal
示範 Motion Sculpting 工具如何雕塑動畫、建立 picker,並編輯多角色動畫
- 32:54 回到 wormhole 用刷子處理這段動畫,讓它比較不突兀、更往後,再做平滑,持續「雕塑」出想要的動畫
- 38:28 工作中可以即時切換 presets,例如只顯示右手、左手或只有雙手,方便快速選取
- 43:16 最後得到和原本不同的動畫,同時仍保有對許多區域的控制
💡 你可以怎麼用:就算手邊沒有這個工具,在 Blender 修動作時也可以照他的順序做:先鎖住不想動的部位再改,改完換兩個角度檢查。最後再回頭看看踢、跳之前的預備動作有沒有被連帶弄壞。
看全部 40 條重點
🧑🏫 這段示範一套叫 Motion Sculpting 的 Blender 動畫工具:不去調數字和曲線,直接在畫面上像捏黏土一樣修動作。內容包括修單一角色的動作、做一個快速選骨頭的面板,以及同時改兩個角色的踢打互動。講者也談了工具的限制和未來規劃,想知道動畫還能怎麼做的人很值得一看。
- 32:54 回到 wormhole 用刷子處理這段動畫,讓它比較不突兀、更往後,再做平滑,持續「雕塑」出想要的動畫↳ wormhole 是這個工具用來雕動畫的模式。brush(刷子)像雕塑刷,在動作上刷過就會改變它。他把突兀的一段刷得往後,再抹平,一點一點修出想要的動作。
- 33:27 手太僵硬時,先離開 brush 改用旋轉。他犯了兩個錯。第一,開著 rotation lock 時,手指會試圖保持原本的旋轉,結果把手弄壞↳ 手的動作太僵時,他改用旋轉直接轉。第一個錯:rotation lock(旋轉鎖定,讓部位維持原本角度)還開著,手指硬要保持原角度,結果把手扭壞了。
- 33:27 第二個錯:用 brush tool 時沒有 propagating。改回 propagating 後,旋轉才會分散到整段動作範圍↳ propagating(傳播)開啟時,一次旋轉會分攤到整段動作。用刷子時這個功能不會作用,他忘了切回來。打開後,旋轉才會平均分到整段,不會只卡在某一格。
- 33:59 把剩下的小 kink 平滑掉,並從兩個角度檢查效果是否都成立↳ kink 指動作裡小小的卡頓或折角。他把剩下的都抹順,再換兩個視角檢查。只從一個角度看很順,換個角度可能就穿幫了。
- 34:45 做好 setup 後會附帶一些免費的功能。setup 很簡單:進入他工具的 edit mode(和 Blender 的 edit mode 類似但不完全相同)↳ setup(前置設定)做一次,就會順帶多出幾個好用功能。做法很簡單:進入工具自己的 edit mode(編輯模式,用來改骨架結構),用法像 Blender 內建的,但不完全相同。
- 35:15 工具會依 weight paints 自動產生網格的 cutouts,也有設定可調。這些 cutouts 是根據實際看到的網格產生的↳ weight paints(權重繪製)記錄模型每一塊受哪根骨頭控制。工具依這些資料自動把模型切成 cutouts(小區塊),切法以畫面上實際看到的模型為準,也能調設定。
- 35:45 它不完全是 edit mode,因為所有骨頭都是 disconnected,但仍保持 parented,這是一個 proxy rig↳ bone(骨頭)是控制模型動作的骨架單位。這裡的骨頭全部拆開各自獨立,但父子關係還在,所以叫 proxy rig(替身骨架),是專給這個工具操作用的。
- 35:45 骨頭顯示紅色,是因為 lock 開著,而且 lock 被一起轉移過來了↳ 骨頭顯示紅色,代表 lock(鎖定)開著。原本設好的鎖定狀態也一起被帶進替身骨架,所以這是正常現象,不是出錯。
- 35:45 雙擊可選取一整條 chain,再右鍵選「create this limb」建立 limb↳ chain(鏈)是一串相連的骨頭,例如整條手臂。雙擊就能選取整條,再右鍵選 create this limb,把它定義成 limb(肢體),之後就能當成一整塊來操作。
- 36:20 未來計畫:可以抓任何 game engine 角色,在角色之間做 mapping,讓工具知道 spine 骨頭等對應關係↳ game engine(遊戲引擎,做遊戲用的開發軟體)裡的角色骨架各不相同。他想讓工具做 mapping(對應),告訴它兩個角色哪根骨頭對哪根,例如 spine(脊椎骨)。
- 36:20 五節 spine 的角色 retarget 到三節時,一般都會損失資訊。他想讓工具重新分配 rotations,得到最接近的結果↳ retarget 是把動作套到另一副骨架上。五節脊椎換成三節,細節通常會少掉。他想讓工具把原本的旋轉重新分配到三節裡,盡量貼近原動作。
- 36:54 他認為 FK rig 的自我限制,反而能帶來不同的做事方式↳ FK rig(正向動力學骨架)是從根部一節一節往末端轉,例如先轉肩再轉肘。它限制比較多,但講者認為這些限制反而會逼出另一種做動畫的方法。
- 36:54 建立 limb 後可右鍵 mirror,預設就會 mirroring。也能設定 limb 預設為 global 或 IK↳ limb 建好後可以右鍵 mirror(左右鏡像),預設就是開的。也能設定 limb 預設用 global(以整個場景的方向操作)或 IK(拉末端、整條自動跟著彎)。
- 36:54 他計畫加入 spine、backward spine 等多種 rig artifacts,用不同方式操作 rig↳ rig artifacts 指各種預先做好的骨架操作組件。他打算加入 spine、backward spine(反向脊椎)等類型,讓同一副骨架能用不同方式操作。
- 37:26 把骨頭移動、旋轉、縮放排成想要的樣子(例如盾牌移到旁邊、手放大)。全選後到 presets 按 add presets↳ 他先把面板上的骨頭移動、旋轉、縮放成好點選的排列,例如把盾牌挪到旁邊、把手放大。全選後到 presets(預設組)按 add presets 存起來。
- 37:26 這樣就得到一個隨時、從任何地方都能叫出來的 picker,用來選骨頭和 limbs↳ 存好後就得到一個 picker(選取面板),是一張簡化的骨架圖,隨時能從任何地方叫出來。直接點面板就能選骨頭和 limb,不必在模型上找。
- 37:56 在 picker 裡,只有被定義為 limb 的部位才能雙擊選取。picker 的形狀可以很簡單,也可以較複雜↳ picker 裡只有定義成 limb 的部位能雙擊整條選取,其他部位不行。面板形狀可以只是簡單幾塊,也可以做得比較細。
- 37:56 可以再新增一個只有右手的 preset↳ 用同樣方法可以再存一個只有右手的 preset,專門用來處理右手。
- 38:28 工作中可以即時切換 presets,例如只顯示右手、左手或只有雙手,方便快速選取↳ 做動畫時可以隨時切換 preset,例如只顯示右手、左手或雙手。面板上只留需要的部分,點選更快,也比較不會點錯。
- 38:28 他也計畫為一般 control rig 做 picker,但沒那麼簡單,因為得指定哪個東西選哪根 control bone↳ control rig(控制骨架)是一般動畫師操作的那套控制器。替它做 picker 比較難,因為得逐一指定面板上每一格要選哪根 control bone(控制骨)。
- 38:28 在這個方法裡,picker 與骨頭是一對一關係,這是此方法流暢性的一部分↳ 在他的方法裡,面板上一格就對應一根骨頭,中間不用轉換。這種直接的一對一對應,正是操作流暢的原因之一。
- 38:28 規劃中的 blockout tools:先 block out 動畫,再一次 bake 進去。目前還沒有 100% 能用,仍在開發中↳ blockout 是先粗略擺出動作;bake(烘焙)是把結果一次寫成真正的動畫資料。他規劃了這類工具,但目前還不能完全使用,仍在開發中。
- 39:02 目前這個工具很適合操作已經存在的動畫,也就是示範中的 sculpt↳ 現階段這個工具最擅長修改已經做好的動畫,也就是前面示範的 sculpt(雕塑):拿現成的動作來捏,而不是從零開始做。
- 39:02 希望未來能做 retiming、混合動畫、loop 動畫(只做一半,另一半自動 mirror)、加入 physics 等功能↳ 未來想加入的功能有:retiming(調整節奏快慢)、混合不同動畫、loop(循環動畫)只做一半另一半自動鏡像,以及 physics(物理模擬)。
- 39:35 示範 multi-character:先移除工具不需要的東西,選取兩個 rig(都在 post mode),再啟用 Motionator↳ multi-character 是同時編輯多個角色。先拿掉工具用不到的東西,選取兩個骨架,並讓兩者都在擺姿勢的模式(字幕寫 post mode),再啟用 Motionator。
- 40:05 在其中一個 rig 上的選取操作,和前一個範例完全一樣。按 Ctrl+Shift 點另一個 rig,就能切換過去控制它↳ 在其中一個骨架上的選取方式跟前一個範例完全一樣。按住 Ctrl+Shift 點另一個角色,就能切換過去控制那個角色。
- 40:05 兩個角色之間可以互動編輯。原本的 steps 太密,他改成每 5 steps↳ 兩個角色可以互相配合著一起改。畫面上 steps 的間隔原本太密、看起來太擠,他改成每 5 steps 顯示一次。
- 40:36 要把踢的動作做得更誇張:先鎖住一隻腳,另一隻不管,然後回到 wormhole↳ 為了把踢腿做得更誇張,他先鎖住一隻腳,另一隻腳不設限,再回到 wormhole 裡雕。
- 40:36 他提到 Pierrick 不喜歡 wormhole 這個名稱,但目前就是這樣叫↳ Pierrick 不喜歡 wormhole 這個名字,但工具目前就是這樣叫。
- 41:06 把踢往前推並更誇張。被踢的角色需要反應:踢中時把他往後推,不要影響太多之前的影格,並讓他往後 settle↳ 他把踢的動作往前推、做得更大。被踢的人也要有反應:踢中那一刻往後推,但不要動到太多之前的影格,再讓他往後退並 settle(慢慢站穩)。
- 41:39 畫面上左邊是過去、右邊是未來,看起來可能很 trippy。onion skins 的顏色也能分辨過去和未來↳ wormhole 畫面把時間攤開:左邊是過去,右邊是未來,看起來有點 trippy(迷幻、令人暈眩)。onion skins(半透明的前後影格姿勢)也會用顏色區分過去和未來。
- 41:39 他說工具仍在大量開發中,但目前示範下來沒有任何 crash↳ 他坦白說工具還在大量開發中,但這場示範下來沒有發生任何 crash(程式當掉)。
- 42:10 只用很少的往回影格就做出推力。不需要改 curves,「看到什麼就做什麼」↳ 後推的力道只改了往回的少數幾格就做出來,curves(記錄數值隨時間變化的動畫曲線)完全沒碰,就是看到什麼直接改什麼。
- 42:10 副作用是破壞了踢之前做好的 anticipation,他接著嘗試修復,同時不破壞往後推的效果↳ 代價是踢之前做好的 anticipation(預備動作,例如踢前先收腿)被弄壞了。他接著修復它,同時要保住剛做好的後推效果。
- 42:10 基本操作鍵和 Blender 有點不同,因為要讓這個方法非常快,必須用不同的操作↳ 這個工具的基本按鍵和 Blender 原本的不太一樣。為了讓操作夠快,它必須另外設計一套按鍵,所以使用時要稍微重新習慣。
- 42:45 鎖腳不是把腳鎖在空間中,而是鎖在它原本的動畫裡。所以被踢者往後移時,其餘動畫完全維持原樣↳ 鎖腳不是把腳釘在空間中某個點,而是讓腳照原本的動畫走。所以被踢的人整個往後退時,其他原有的動作都完全不變。
- 42:45 想讓某一步更戲劇化時,先確認角色騰空和落地的位置,才不會破壞其他部分↳ 想讓某一步更戲劇化,要先看清楚角色在哪裡離地、在哪裡落地,再動手修改,才不會連帶把其他部分弄壞。
- 42:45 即使部位被鎖住仍然可以移動它,鎖住只是防止上游的 parents 移動時帶動它↳ 被鎖住的部位自己仍然可以移動。鎖定只是防止 upstream parents(上游的父骨頭,例如手的上游是手臂)移動時把它一起帶走。
- 43:16 最後得到和原本不同的動畫,同時仍保有對許多區域的控制↳ 最後得到的動畫和原本很不一樣,但許多部位仍然在掌控之中,不會一改就全亂掉。
- 43:16 picker 實際操作:雙擊選 limbs,按住 Shift 可繼續加選,按住 Shift 滑過也能把東西加入選取↳ picker 的實際用法:雙擊選取整條 limb;按住 Shift 再點可以繼續加選;按住 Shift 用滑鼠滑過去,也能一路把東西加入選取。
📘 術語
wormhole(蟲洞(工具內的模式名稱)):字幕中用來雕塑動畫的模式。Pierrick 不喜歡這名稱,但目前就這樣叫
onion skins(洋蔥皮):顯示前後影格的姿勢。可從顏色分辨過去和未來:左邊是過去,右邊是未來
propagating(傳播):開啟後,旋轉會分散到整段動作範圍。用 brush tool 時不會 propagating
rotation lock(旋轉鎖定):開啟時手指會試圖保持原本的旋轉,可能把手弄壞
kink(彎折/小瑕疵):動畫裡不順的小地方,需要平滑掉
weight paints(權重繪製):工具依據它自動產生網格的 cutouts
cutouts(切塊):依 weight paints 自動從實際網格切出的區塊
proxy rig(代理骨架):所有骨頭 disconnected 但仍保持 parented 的 rig
limb(肢體):雙擊選取整條 chain 後,右鍵 create this limb 建立。在 picker 中可雙擊選取
FK rig(正向運動學骨架):講者認為它的自我限制能帶來不同的做事方式
IK(反向運動學):建立 limb 時可設定的預設狀態之一,另一個是 global
retargeting(動畫重定向):把動畫套到不同骨架上,例如五節 spine 套到三節,一般會損失資訊
game engine(遊戲引擎):未來希望能抓任何 game engine 角色,並在角色之間做 mapping
picker(選取面板):用 presets 建立,隨時從任何地方叫出,用來選骨頭和 limbs
presets(預設組):picker 的不同版本,例如只有右手。工作中可以即時切換
control rig(控制骨架):一般的控制骨架。替它做 picker 得指定哪個東西選哪根 control bone,所以不簡單
blockout(粗排動畫):先 block out 動畫,再一次 bake 進去。仍在開發中
bake(烘焙):把 block out 好的動畫一次寫入
retiming(重新調整時間):講者希望未來加入的功能之一
loop animation(循環動畫):希望能只做一半,另一半自動 mirror
Motionator(Motionator(工具名稱)):選取兩個 rig 後啟用它,就能進行多角色編輯
anticipation(預備動作):踢之前做的預備動作,推動作時被意外破壞,需要修復
upstream parents(上游父骨):部位被鎖住時,只是防止它們移動時帶動該部位,本身仍可移動
onion skins(洋蔥皮):顯示前後影格的姿勢。可從顏色分辨過去和未來:左邊是過去,右邊是未來
propagating(傳播):開啟後,旋轉會分散到整段動作範圍。用 brush tool 時不會 propagating
rotation lock(旋轉鎖定):開啟時手指會試圖保持原本的旋轉,可能把手弄壞
kink(彎折/小瑕疵):動畫裡不順的小地方,需要平滑掉
weight paints(權重繪製):工具依據它自動產生網格的 cutouts
cutouts(切塊):依 weight paints 自動從實際網格切出的區塊
proxy rig(代理骨架):所有骨頭 disconnected 但仍保持 parented 的 rig
limb(肢體):雙擊選取整條 chain 後,右鍵 create this limb 建立。在 picker 中可雙擊選取
FK rig(正向運動學骨架):講者認為它的自我限制能帶來不同的做事方式
IK(反向運動學):建立 limb 時可設定的預設狀態之一,另一個是 global
retargeting(動畫重定向):把動畫套到不同骨架上,例如五節 spine 套到三節,一般會損失資訊
game engine(遊戲引擎):未來希望能抓任何 game engine 角色,並在角色之間做 mapping
picker(選取面板):用 presets 建立,隨時從任何地方叫出,用來選骨頭和 limbs
presets(預設組):picker 的不同版本,例如只有右手。工作中可以即時切換
control rig(控制骨架):一般的控制骨架。替它做 picker 得指定哪個東西選哪根 control bone,所以不簡單
blockout(粗排動畫):先 block out 動畫,再一次 bake 進去。仍在開發中
bake(烘焙):把 block out 好的動畫一次寫入
retiming(重新調整時間):講者希望未來加入的功能之一
loop animation(循環動畫):希望能只做一半,另一半自動 mirror
Motionator(Motionator(工具名稱)):選取兩個 rig 後啟用它,就能進行多角色編輯
anticipation(預備動作):踢之前做的預備動作,推動作時被意外破壞,需要修復
upstream parents(上游父骨):部位被鎖住時,只是防止它們移動時帶動該部位,本身仍可移動
✏️ 小考一題
講者在多角色範例中鎖住腳時,說腳是被鎖在哪裡?
A. 鎖在 onion skins 顯示的第一個影格B. 鎖在 IK 目標上C. 鎖在世界空間中的固定位置D. 鎖在它原本的動畫中看答案
答案:D。[42:45] 講者說「I'm not locking the feet in space. I'm locking them in their animation.」
💛 覺得有幫助?支持一下


課本免費、沒有廣告,支持與否都能照常讀 🐰