控制器切換空間切到姿勢跳動,乾脆自己寫一個會回滾的版本

角色動畫做久了應該都遇過:武器要從「跟著手」切到「放在背後」,或是道具要從「握在手上」切到「世界固定」,本來以為只是換個父層級,結果姿勢直接跳掉,還要回頭一格一格修 keyframe。更麻煩的是,有時候切換失敗了也沒有提示,等到隔天打開場景才發現那段動畫早就壞掉。

手邊剛好有一個自己平常在用的 Maya 控制器空間切換工具,本來是寫來解決自己專案的麻煩,後來想說反正商城都開了,乾脆包一包拿出來賣。

AnchorSwitch 是什麼

簡單說,就是一個 Maya 的 Python 小工具,讓控制器可以在多個跟隨空間之間切換,例如「跟著手」「放在背後」「固定在世界」。切換時工具會自動算出補償矩陣,盡量保持切換前的世界位置不跳動,而且切換之前會先檢查這次切換算不算得出來——矩陣有沒有零縮放、切換後的位置誤差有沒有超出範圍。只要有一項不合格,工具會直接取消這次切換並自動回到原本狀態,不會留下切一半的爛攤子。

工具也會在建立設定跟每次切換前,檢查控制器是不是同時被別的東西(例如 parentConstraint)驅動——如果有,會直接告訴你是哪個通道被誰佔用,而不是讓兩套系統互相打架、算出奇怪的結果。

適合什麼情況用

自己一個人做角色動畫

沒有 TD 幫忙顧 rig,武器、道具的空間切換出了問題只能自己 debug。這工具在切換失敗時會直接說原因,不用自己一格一格排查是哪裡的矩陣算壞了。

學生/剛入行動畫師

剛開始學怎麼做空間切換,容易只知道「先照著教學做」,出錯了也看不懂為什麼。這工具把每個安全檢查都攤開來講清楚,順便當作理解空間切換原理的教材。

已經維護多個角色資產的人

角色多了以後,最怕的是切換失敗留下半套 keyframe,隔幾天才發現動畫早就壞掉。這工具的每一步操作都在 undo chunk 裡,失敗一定回滾,不會偷偷留下垃圾節點或屬性。

跟市面上的工具比一比

面向AnchorSwitch市面上其他工具
失敗處理切換前檢查矩陣可逆性與補償重建誤差,失敗直接回滾,不留半套 keyframe多數工具著重「切得順」,較少檢查失敗情境,出錯時容易留下半套設定,得自己手動復原
Constraint 衝突偵測建立/切換前偵測控制器是否被 parentConstraint 等外部連接驅動,會拒絕操作並說明是哪個通道、被誰佔用市面工具較少見這類保護,兩套系統疊加時容易互相打架但不會事先警告
安裝方式單一 .py 檔拖進 Maya 視窗即可,無外部套件依賴部分工具需要額外安裝套件,或走完整外掛安裝流程
面板細節選取變空時保留上一次顯示,鎖定按鈕可以固定顯示對象較少見到針對「選取跑掉」這種日常操作細節的處理
價格US$18,一次買斷免費~US$10 常見(從隨意付費到約 NT$317 不等),功能較陽春

市面上免費的空間切換工具不少,能不能取代,看的是你在意「切得動就好」還是「切壞了要能自己說清楚為什麼」。AnchorSwitch 解決的是後面這件事。

下載後怎麼用

相容 Maya 2020 以上(需要支援 offsetParentMatrix),已在 Maya 2026 實際場景驗證。下載後把 space_switch_tool.py、space_switch_tool_launcher.py 放在同一個資料夾:

1. 把 space_switch_tool_launcher.py 拖進 Maya 3D 視窗,工具面板會打開,並自動在 Shelf 建立按鈕。
2. 之後可以直接點 Shelf 按鈕開啟,或在 Script Editor 打:

import space_switch_tool
space_switch_tool.show()

AnchorSwitch|控制器空間切換工具

US$18,下載後直接用,商城裡找得到。

前往商城看看 →

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

返回頂端
0