教學指南閱讀約 6 分鐘

動畫重定向: 給已經綁好骨骼的模型新增動畫

給已綁骨的模型新增動畫,同時保留它的骨架、蒙皮權重、物理效果和原有動畫。

afk.ai/rig
把一個已綁骨的 VRM 拖到 afk.ai/rig 上:選擇 Use its skeleton,afk.ai 的動畫就會在它自己的骨骼上播放,頭髮和外套下襬隨之擺動。等待過程已加速。 模型:VRoid Studio 的 AvatarSample_C,由 pixiv 製作。

動畫重定向,就是把為一套骨架製作的動畫放到另一套骨架上播放。afk.ai 可以為任何已經綁好骨骼的角色做這件事,無論是人形、動物還是生物。把模型拖到 afk.ai/rig,選擇 Use its skeleton(使用它的骨架),我們的動畫就會在它自己的骨骼上播放:人形有 594 個,其他每種體型也各有一套專門製作的動畫。

如何給已綁骨的模型新增動畫

  1. 連同骨架一起匯出模型。使用 VRM、FBX 或 GLB 檔案,或者包含貼圖的 ZIP。VRM 0 和 VRM 1.0 都支援。
  2. 上傳到 afk.ai/rig。afk.ai 會讀取骨架,把它的骨骼與我們為這種體型準備的骨骼對應起來,然後問你想如何綁骨。選擇 Use its skeleton。
  3. 等它載入完。這一步沒有 AI 參與:你的骨骼和權重都照原樣使用。
  4. 預覽動畫。該體型的每個動畫都會在你模型自己的骨骼上播放:如果是人形,就是全部 594 個動畫,包括奔跑、舞蹈、劍術連擊、施法和表情動作。
  5. 下載 GLB,裡面有你勾選的動畫,以及模型原有的動畫。
afk.ai/rig:This model already has a skeleton.(這個模型已經有骨架了。)按鈕:Use its skeleton、Rig it with our AI
當模型自帶一套能逐根骨骼對應的人形骨架時,afk.ai/rig 會這樣問你。

哪些東西保持不變

重定向只改變骨骼的運動方式。模型的其餘部分原樣保留:

  • 骨架:每根讓網格變形的骨骼都會保留,包括你的模型特有的骨骼,比如頭髮、裙子、外套下襬、袖子、眼睛和配飾。這些骨骼保留原來的名字。
  • 蒙皮權重:不會重新繪製、平滑或清理。每個頂點跟隨的骨骼和權重都和原來一樣。
  • 物理效果:彈簧骨骼(spring bone)和它們的碰撞器,都保留模型作者設定的參數。
  • 原有動畫:以原來的名字保留在檔案中,和新動畫放在一起。
  • 網格和材質:頂點和貼圖都不變。原本共用一大組頂點的網格部分,只會保留各自用到的頂點,所以檔案往往會變小。

我們用 VRoid Studio 的 AvatarSample_C 做了測試。18,347 個頂點和 14 個材質全部保留,模型的 36 根額外骨骼(20 根頭髮、14 根外套下襬、2 根眼睛)也和 afk.ai 的 66 根身體骨骼一起保留下來。帶五個動畫時,下載的檔案為 7.3 MB,而原始 VRM 是 13.1 MB。

  1. 原始模型:afk.ai/rig 上的 AvatarSample_C

    1原始模型

    已由作者綁骨、刷好權重並設定了彈簧骨骼

  2. 它自己的骨架:afk.ai/rig 上的 AvatarSample_C

    2它自己的骨架

    身體的關節逐根骨骼對應,位置和作者放的一樣

  3. 它自己的蒙皮權重:afk.ai/rig 上的 AvatarSample_C

    3它自己的蒙皮權重

    不會重新繪製:每種顏色代表一根身體骨骼帶動的部分;頭髮和外套仍由它們自己的骨骼控制

  4. 動起來:afk.ai/rig 上的 AvatarSample_C

    4動起來

    afk.ai 的動畫在它自己的骨骼上播放,頭髮隨之擺動

同一個模型在 afk.ai/rig 上的四個階段,全程大約 10 秒。 模型:VRoid Studio 的 AvatarSample_C,由 pixiv 製作。

頭髮和布料物理

VRM 上的頭髮和衣服靠彈簧骨骼運動:一串串額外的骨骼,帶有硬度、阻力、重力,以及防止它們穿過身體的碰撞器。afk.ai 會從檔案(VRM 0 或 VRM 1.0)中讀取彈簧骨骼,並在每個動畫播放時進行模擬,所以頭髮和外套下襬會隨著動作擺動。

GLB 和 FBX 檔案無法儲存彈簧骨骼,所以下載時會把它們的運動烘焙進每個動畫,作為這些骨骼上的關鍵影格。結果在 Blender、Unity、Unreal Engine 或任何 glTF 檢視器中播放效果都一樣,不需要設定物理。

Sword Regular Combo 在模型自己的骨架上播放,和在 afk.ai/rig 上看到的一樣:它的彈簧骨骼讓頭髮和外套下襬擺動起來。 模型:VRoid Studio 的 AvatarSample_C,由 pixiv 製作。

原有動畫

如果你的模型已經有動畫,它們會被保留。這些動畫以原來的名字包含在下載檔案中,和新動畫使用同一套骨架,所以遊戲角色原本的待機和攻擊動畫都還在。

兩組動畫使用相同的骨骼、權重和物理效果。下載之前,你可以在 afk.ai/rig 上把它們放在一起預覽。

AvatarSample_C.vrm

  • 骨架 · 身體,20 根頭髮骨骼、14 根外套下襬骨骼、2 根眼睛骨骼
  • 蒙皮權重 · 由作者繪製,覆蓋 18,347 個頂點
  • 彈簧骨骼 · 頭髮和外套上的 13 條骨骼鏈,22 個碰撞體
  • 動畫 · Idle、Greeting

AvatarSample_C.glb

  • 骨架 · afk.ai 的 66 根身體骨骼(與 Unreal 的 Mannequin 同名),加上它自己的 36 根
  • 蒙皮權重 · 不變,仍是那 18,347 個頂點
  • 彈簧骨骼 · 擺動效果烘焙進每個動畫
  • 動畫 · Idle、Greeting,以及你勾選的動畫:Sword Regular Combo、Vault、Roll、Dance Groove…
示意圖:輸入了什麼、輸出了什麼。VRoid 的範例模型本身不帶動畫,所以圖中標為作者原有的兩個動畫只是舉例。

支援的骨架

afk.ai 會保留任何已綁骨角色的骨架:人形、四足動物、有蹄動物、鳥類、龍、恐龍以及其他生物。

對於人形,它需要髖部、脊椎、頭部、兩條帶手的手臂和兩條帶腳的腿。手指、腳趾和上胸部可有可無。VRM 透過它的人形骨骼標籤來對應(VRM 詳細介紹)。其他人形骨架依骨骼名稱對應,支援下面任何一種命名規則,有沒有 mixamorig: 或 Armature| 這樣的前綴都可以。

對於動物或生物,或者骨骼名稱不符合以上任何一種命名規則的人形,afk.ai 會根據骨骼的名稱、相連方式和所在位置來對應。然後,它會對照每根骨骼應在的位置檢查對應結果:腿在身體下方,左邊的在左邊,尾巴在後面。如果對應結果不合理,就改由我們的 AI 為模型綁骨。

扭轉骨骼、滾動骨骼、IK 骨骼、輔助骨骼和末端骨骼都不會被改動,頭髮、布料、尾巴或其他不屬於身體的骨骼也一樣。它們保持原樣,權重也不變。

骨架骨骼命名範例
VRM 0 和 1.0VRM 人形標籤leftUpperArm
MixamoMixamomixamorig:LeftForeArm
VRoid(匯出為 FBX)VRoidJ_Bip_L_LowerArm
Unreal EngineUE Mannequin 假人lowerarm_l
Unity 和 Ready Player MeUnity HumanoidLeftLowerArm
3ds MaxBipedBip01 L Forearm
  • Sprint
  • Dance Groove
  • Two-hand Blast
  • Roll
  • Attack Ground Pound
  • Dodge Left
afk.ai 的六個動畫在同一個模型自己的骨架上播放,和在 afk.ai/rig 上看到的一樣,彈簧骨骼讓頭髮和外套下襬擺動起來。 模型:VRoid Studio 的 AvatarSample_C,由 pixiv 製作。

使用下載的檔案

  • Blender:選擇 File > Import > glTF 2.0。每個動畫都會匯入為一個 Action,物理效果已經烘焙在內。
  • Unity:下載時選擇 FBX,然後把 Rig 分頁設為 Humanoid。也可以用 glTFast 匯入 GLB。
  • Unreal Engine:下載 FBX,或者匯入 GLB。身體骨骼使用 UE Mannequin 假人的名稱(pelvis、spine_01、thigh_l),所以 Unreal 的 IK Retargeter 可以自動對應它們。
  • Godot 和 three.js:直接載入 GLB。
  • VRChat 和 VTuber App:它們需要 Unity 的 Avatar 或 VRM。你的頭髮和布料骨骼保留了原來的名字,所以可以在同樣的骨骼上重新加上 PhysBones 或彈簧骨骼。
AvatarSample_C 上的 afk.ai/rig Animations 面板,展開了 Combat 類別,選取了 Sword Regular Combo
已綁骨模型上的 Animations(動畫)面板:人形共有 593 個,依類別排列。勾選你想要的動畫,它們會放進同一個檔案。 模型:VRoid Studio 的 AvatarSample_C,由 pixiv 製作。

常見問題

什麼是動畫重定向?

就是把為一套骨架製作的動畫放到另一套骨架上播放。骨骼需要一一對應,動作也要根據靜止姿勢和身體比例的差異進行調整。如果你的模型已經綁好骨骼,afk.ai 會把這兩件事都處理好。

能給已經有動畫的模型再新增動畫嗎?

能。它原有的動畫以原來的名字保留在檔案中,你從 afk.ai 的 594 個動畫中選擇的動畫會新增在旁邊,使用同一套骨架。

重定向會改變我的蒙皮權重嗎?

不會。模型每根骨骼上的權重都完全保持原樣,包括頭髮和衣服的額外骨骼。

會保留頭髮和布料物理嗎?

VRM 會。它的彈簧骨骼會在動畫播放時進行模擬,運動會作為關鍵影格烘焙進下載的檔案。FBX 或 GLB 檔案不儲存物理效果,因為物理是在製作模型的軟體裡設定的。它的頭髮和布料骨骼及其權重都會保留,所以你可以在引擎裡重新給它們設定物理。

需要 Unity、Blender 或骨骼對應表嗎?

不需要。一切都在瀏覽器中的 afk.ai/rig 上完成:上傳模型,選擇 Use its skeleton,挑選動畫,然後下載。

如果我的模型骨架辨識不出來怎麼辦?

那就不會問你這個問題。afk.ai 的 AI 會像處理任何模型一樣,從頭給它綁骨,換上一套包含手指的新骨架。

會保留我模型的臉部表情嗎?

下載的檔案裡暫時還不行。身體、頭髮和衣服都會保留。臉部形狀(blend shape)會和 VRM 匯出一起推出。

綁好骨骼的動物或生物也能用嗎?

能。上傳時選擇它的體型,比如四足或有蹄,然後選擇 Use its skeleton。綁好骨骼的狗或馬會保留自己的骨架和蒙皮權重,尾巴和耳朵也會一起保留。它會得到該體型的動畫。

一共有多少個動畫?免費嗎?

人形有 594 個動畫。你每月可以免費給 3 個模型綁骨,並在上面預覽所有動畫。免費帳號每月可以下載 3 個動畫,Pro 解鎖全部動畫。

幫你的模型綁骨、製作動畫

AI 在你的瀏覽器中為它綁骨,然後數百個動畫就能在它身上播放。下載一個 GLB,任何引擎都能用。

幫模型綁骨

更多教學