教學教學閱讀約 5 分鐘
VRM 轉 FBX、GLB 轉 FBX 及反向轉換: 保留動畫的 3D 轉檔工具
在瀏覽器中把任何 3D 模型轉換為 GLB、FBX、USDZ、OBJ 或 STL,保留它的骨架、蒙皮權重、每個關鍵影格和臉部形狀。
afk.ai/rig/convert 能把 3D 模型轉換成另一種檔案格式,同時不會遺失讓它動起來的東西。拖入一個 VRM,就能得到一個 Unity 能辨識為已綁骨角色、並帶有臉部形狀的 FBX。拖入一個帶動畫的 FBX,就能得到一個用於網頁的 GLB。骨架、蒙皮權重和每個動畫的每個關鍵影格都原封不動地保留下來。
它能轉換什麼
它能讀取 VRM 0 和 1.0、GLB、glTF(連同它的檔案,或者打包在 ZIP 中)、FBX、OBJ、STL、PLY、USD 和 USDZ,最大 150 MB。它能輸出五種格式,每種格式能存放的模型內容各不相同。轉換之前,頁面會告訴你是哪些。
| 格式 | 保留 | 捨棄 |
|---|---|---|
| GLB | 骨架、權重、每個動畫、臉部形狀、材質和貼圖 | 只有 VRM 專屬的附加內容 |
| FBX | 同上,每個動畫各是一個獨立的 take | 只有 VRM 專屬的附加內容 |
| USDZ | 骨架、權重、臉部形狀和一個動畫 | 其他動畫:USDZ 只能存放一條時間軸 |
| OBJ | 網格、材質和貼圖,打包在 ZIP 中 | 骨架、動畫和臉部形狀 |
| STL | 形狀,以實際尺寸、公釐為單位 | 其他一切,包括顏色和貼圖 |
如何把 VRM 轉換為 Unity 用的 FBX
- 開啟 afk.ai/rig/convert 並登入。
- 拖入你的 VRM。它會像在 VRM 軟體中那樣在預覽裡播放:頭髮擺動,表情可以一個個試。
- 選擇 FBX。頁面會針對這個模型列出 FBX 會保留什麼、改變什麼、捨棄什麼。
- 轉換為 FBX。檔案在我們的伺服器上產生,並自動下載。一個 VRoid 模型只要幾秒;數百個動畫則要幾分鐘。
- 匯入 Unity。把 FBX 拖進 Assets。在它的 Rig 分頁中,把 Animation Type 設為 Humanoid,然後按下 Apply。

VRM 轉 FBX

帶動畫的 GLB 轉 FBX
VRM 會有什麼變化
VRM 是一個帶有附加內容的 glTF,這些附加內容只有 VRM 軟體才能讀取。轉檔工具會保留其他軟體能用的一切,並把其餘部分變成它們能用的東西。
- 表情:變成以表情命名的臉部形狀(blend shape),比如 Joy、Angry 和 Blink。Unity、Unreal、Blender 和 three.js 都能驅動它們。
- 彈簧骨骼:頭髮和衣服的擺動會以關鍵影格的形式烘焙進模型的動畫,效果和 VRM 軟體中播放的一樣。VRM 本身沒有動畫,所以請先在 afk.ai 上替它加一些。
- 卡通著色:變成使用相同貼圖的一般受光材質。如果是 GLB,你也可以改要平塗的無光照材質。
- 朝向:VRM 0 在大多數軟體中是背對著的,所以會把它轉過來面朝前方。
- 捨棄:只有 VRM 軟體才讀取的內容,比如它的骨骼標籤、視線追蹤、第一人稱設定和作者資訊。
我們轉換了 VRoid Studio 的 AvatarSample_C。13.1 MB 的 VRM 變成了一個 10.5 MB 的 FBX,101 根骨骼、18,347 個頂點、14 個材質及其貼圖全部保留,而且面朝前方。它的 14 個表情變成了名為 Neutral、Joy、Angry、Sorrow、Fun、Surprised、Blink 以及嘴型 A、I、U、E 和 O 的形狀鍵,和 VRoid 產生的 54 個臉部形狀放在一起。
Neutral
Joy
Angry
Surprised
VRM,在 afk.ai 上
FBX,在 Blender 中每個關鍵影格,一格不差
轉檔工具常常會對動畫重新取樣、簡化曲線,或者讓動畫晚一格開始。這個工具不會。每個動畫的每個關鍵影格都落在原本的位置,每個動畫都保留自己的臉部動作,而且都從時間 0 開始,和原始檔案一樣。
FBX 中的每個動畫各是一個獨立的 take,每根骨骼的每一格都會寫出來,沒有任何簡化。我們以每秒 240 次的頻率對每根骨骼取樣來測量。一個 GLB 轉成 FBX,再把這個 FBX 轉回 GLB,每一步都與轉換前的檔案相差不超過 0.002 mm 和 0.05 度。
我們在同一個模型上用 afk.ai 的五個動畫試過:一個 7.2 MB 的 GLB 在幾秒內變成了 29.3 MB 的 FBX。每個動畫都是一個獨立的 take,每秒 120 格,每一格都有關鍵影格,每個動畫裡都有頭髮和外套下襬的擺動。
代價就是 FBX 檔案很大。把 afk.ai 全部 193 個免費動畫放到一個角色上,產生的 FBX 約 230 MB,需要幾分鐘。
- Dance Groove
- Jumping Jacks
- Run Anime
在 Blender、Unity、Unreal 和 Godot 中使用
- Blender:依序選擇 File、Import、FBX。每個 take 都會匯入為一個 Action,臉部形狀則匯入為形狀鍵。
- Unity:把 Rig 分頁設為 Humanoid。每個 take 都是一個動畫片段,臉部形狀則是 Skinned Mesh Renderer 上的 blend shape。
- Unreal Engine:以 Skeletal Mesh 匯入,並開啟 Import Morph Targets 和 Import Animations。
- Godot 和 three.js:GLB 可以直接載入。
- Apple 裝置:USDZ 可以在 Quick Look 和 Reality Composer 中開啟。
- 3D 列印:STL(以實際尺寸、公釐為單位),或者 OBJ。

VRM 轉出的 FBX:14 個表情變成形狀鍵,Joy 設為 1

帶動畫的 GLB 轉出的 FBX:五個 take,每個影格都有關鍵影格,120 fps
你的模型,任何格式
你在 afk.ai/rig 上綁骨的模型也能以這五種格式下載:附上你勾選的動畫的 GLB 或 FBX,附上一個動畫的 USDZ,以及靜止的 OBJ 或 STL。你轉換過的模型會存放在這個瀏覽器的 Your Models(我的模型)中,之後可以再用另一種格式下載。你也可以用那裡的 + 按鈕加入你自己的任何模型,並以任何格式下載。
常見問題
如何把 VRM 轉換為 FBX?
把 VRM 拖到 afk.ai/rig/convert,選擇 FBX,然後按下 Convert to FBX。它的骨架、蒙皮權重和貼圖都會保留,表情會變成臉部形狀。
轉換會保留我的動畫嗎?
會。在 GLB 和 FBX 中,每個動畫的每個關鍵影格都會保留。USDZ 只能存放一個動畫,所以只保留第一個。OBJ 和 STL 存放的是靜止的模型。
我 VRM 的表情在 Unity 中能用嗎?
可以,以 blend shape 的形式使用。每個表情都會變成一個以它命名的臉部形狀(Joy、Blink、Angry),放在 Skinned Mesh Renderer 上,可以直接用腳本或動畫來驅動。
會保留頭髮物理嗎?
會把它烘焙進去。FBX、GLB 和 USDZ 檔案無法帶有彈簧骨骼,所以擺動會以關鍵影格的形式寫進每個動畫,效果和 VRM 軟體中播放的一樣。在你的引擎中,不需要設定任何物理就能播放。
能把 FBX 轉換為 GLB,或者把 GLB 轉換為 FBX 嗎?
可以,兩個方向都行,也能從 OBJ、STL、PLY 和 USDZ 轉換。不支援 Collada(.dae)。
能轉換為 VRM 嗎?
目前還不行。VRM 匯出(附帶臉部追蹤和物理效果)即將推出。
為什麼我的 FBX 這麼大?
這裡產生的 FBX 會保留每根骨骼的每一格,所以動作是精確的。數百個動畫就會有數百 MB。少選一些動畫,或者改用小得多的 GLB。
免費嗎?
免費,用免費帳號就行:每天 10 次轉換。檔案最大 150 MB。
幫你的模型綁骨、製作動畫
AI 在你的瀏覽器中為它綁骨,然後數百個動畫就能在它身上播放。下載一個 GLB,任何引擎都能用。