Chuyển Đổi GLB sang FBX — Miễn Phí Trực Tuyến

Dễ dàng chuyển đổi file GL Transmission Format Binary của bạn sang định dạng Filmbox. An toàn, nhanh chóng và hoàn toàn miễn phí.

Kéo và thả file 3D của bạn vào đây

hoặc nhấn để chọn file

Chuyển đổi sang:
1

Tải Lên GLB

Kéo thả hoặc chọn file GLB từ thiết bị của bạn.

2

Chuyển Đổi sang FBX

Chọn FBX làm định dạng đầu ra và nhấn Chuyển Đổi Ngay.

3

Tải Xuống File

File FBX vừa chuyển đổi sẽ sẵn sàng để tải xuống ngay lập tức.

Tác giả: Huy Nguyen · ·

GLB là thứ bạn nhận được từ Sketchfab, từ một lần xuất glTF trong Blender, từ dịch vụ quét ảnh hoặc từ bất cứ thứ gì làm cho web. FBX là thứ Unity, Unreal, Maya và 3ds Max đòi. Chuyển qua lại giữa hai định dạng này là một trong những việc phổ biến nhất trong làm game và animation, và câu hỏi gần như chưa bao giờ là mấy tam giác có qua được hay không. Câu hỏi là bộ xương, texture và animation có đi theo hay không.

Lo như vậy là hợp lý, bởi nhiều công cụ chuyển đổi lặng lẽ bỏ rơi chúng. Một file GLB có thể mang bộ xương, trọng số skin theo từng đỉnh, material PBR với texture nhúng sẵn trong cùng một file, và các clip animation. FBX cũng mang được hết những thứ đó, nên một lần chuyển đổi tốt thì không được mất gì đáng kể.

Thay vì chỉ nói suông, hôm nay chúng tôi dựng ba file GLB, trong đó một file có bộ xương skin hai đốt thật và một file có texture PNG nhúng bên trong, cho chạy qua đúng bộ chuyển đổi mà trang này dùng, rồi mở lại từng kết quả trong Blender 5.1 và đọc thẳng các byte trong file FBX. Dưới đây là những gì chúng tôi đo được.

Ba lần thử giữ lại được gì và mất gì

Ba file đầu vào. Một cảnh thường gồm hai đối tượng có tên, mỗi cái một màu trơn, một trong hai có animation quay 40 frame. Một cảnh cùng kiểu nhưng có texture PNG 64 x 64 nhúng trong GLB và map qua một bộ UV. Và một bộ xương skin: armature hai đốt, một mesh gắn vào đó bằng trọng số theo từng đỉnh, cùng animation quay xương 30 frame.

Đưa vàoNhận lạiKết luận
Hai đối tượng có tên trong mỗi cảnhHai đối tượng mesh, tên không đổiGiữ được. Không bị gộp lại và không xuất hiện tên tạm
972 và 540 tam giác972 và 540 tam giácGiữ chính xác, từng đỉnh một
Material có tên kèm màu gốcVẫn tên đó và màu đó, khớp đến hai chữ số thập phânGiữ được
Texture PNG nhúng trong GLBCùng ảnh đó, nhúng bên trong file FBXGiữ được. Không phải mang theo file ảnh rời
Bộ UVBộ UVGiữ được
Animation quay 40 frameMột clip, frame 1 đến 40Giữ được, nhưng bị viết lại thành đường biến đổi đã bake
Armature hai đốt xươngArmature với đúng hai đốt xương đóGiữ được
Trọng số skin theo từng đỉnhVẫn hai nhóm trọng số đó, vẫn gắn vào bộ xươngGiữ được
Animation xương 30 frameMột clip, frame 1 đến 30, có đường animation xương thậtGiữ được
Toạ độ tính theo métSố liệu y nguyên, trục lên giống hệtGiữ được. Không bị phóng to hay quay

Bộ xương sống sót, và đây là phần đáng biết nhất

Đây mới là câu hỏi mà phần lớn mọi người thực sự cần trả lời, nên chúng tôi dựng riêng một file để trả lời nó. Đầu vào là một cánh tay skin nhỏ: armature có hai đốt tên Lower và Upper, một mesh gắn vào cả hai bằng trọng số theo từng đỉnh, và đốt trên có animation quay 30 frame.

Sau khi chuyển, file FBX vẫn chứa một armature với đúng hai đốt Lower và Upper, mesh vẫn còn hai nhóm trọng số mang tên hai đốt đó, và vẫn đang gắn vào bộ xương. Đọc thẳng file FBX thì dữ liệu skin nằm đúng chỗ của nó: một deformer skin với một cluster cho mỗi đốt xương, kèm một bind pose được lưu lại. Animation trở về dưới dạng một clip trải từ frame 1 đến 30, và các đường animation nằm trên đốt Upper chứ không chỉ nằm trên đối tượng.

Vậy một nhân vật GLB có rig, chuyển ở đây, thì vào engine của bạn vẫn phải là một nhân vật có rig. Giới hạn cần nói thẳng: bộ xương của chúng tôi chỉ có hai đốt và một clip. Chúng tôi chưa thử bộ xương người đầy đủ, chưa thử nhiều clip trong cùng một file, và chưa thử blend shape, nên hãy coi những thứ đó là chưa kiểm chứng chứ không phải đã xác nhận.

Texture đi bên trong file FBX

Một file GLB giữ ảnh của nó bên trong chính file đó, đấy là toàn bộ ý nghĩa của định dạng này. FBX cũng làm được như vậy, và trong lần thử của chúng tôi thì nó đã làm: các byte PNG nằm nhúng ngay trong file FBX, kèm một tham chiếu theo đúng dạng media nhúng mà FBX dùng. Nhập lại vào Blender thì ảnh 64 x 64 và bộ UV đều trở về nguyên vẹn.

Chuyện này quan trọng vì phàn nàn thường gặp nhất về texture sau một lần chuyển đổi là model vào thì xám trơn kèm lỗi thiếu file. Lần này điều đó không xảy ra, và bạn cũng không phải giữ thêm một file ảnh bên cạnh file FBX.

Có một chi tiết chúng tôi đo được, xin nói thật. Ở material có texture, giá trị màu gốc trở về là màu trắng trơn và màu thực tế do texture quyết định, trong khi GLB ban đầu không có giá trị màu gốc nào cả mà dựa hoàn toàn vào texture. Nhìn ra ngoài thì kết quả giống nhau, nhưng nếu bạn tưởng trong ô đó còn một màu nữa thì không, ô đó trống.

Animation sống sót, nhưng bị viết lại thành đường đã bake

Cả hai cảnh có animation đều mang clip về nguyên vẹn với đúng khoảng frame cũ: 1 đến 40 cho animation quay đối tượng, 1 đến 30 cho animation xương. Không có gì bị cắt ngắn và không có clip nào mất.

Cách lưu thì có đổi. GLB ghi một phép quay dưới dạng quaternion và chỉ ghi những kênh thực sự thay đổi. File FBX chúng tôi nhận lại có đường vị trí, quay và phóng to trên mọi node có animation, phép quay biểu diễn bằng góc Euler, và kênh đang chuyển động thì có một key cho mỗi frame.

Để phát lại thì không khác gì, và đó chính là lý do FBX làm vậy: kênh biến đổi đã bake thì không gây hiểu nhầm trong bất kỳ engine nào. Nó chỉ thành vấn đề nếu bạn định sửa lại các đường animation về sau, vì bạn sẽ thấy ba mươi key ở nơi mình chỉ đặt hai, và góc Euler ở nơi mình dùng quaternion. Nếu mục đích là sửa animation, hãy giữ file GLB, hoặc tốt hơn là file project gốc, làm bản chuẩn.

Trục lên và tỉ lệ ở đây không cần sửa

Đây là chỗ GLB sang FBX dễ hơn phần lớn các cặp chuyển đổi khác. Cả hai định dạng đều lấy Y làm trục lên, nên không có phép quay nào phải hoàn lại. File FBX chúng tôi nhận lại khai báo đúng như vậy: trục lên Y, trục trước Z, hệ số đơn vị bằng 1, và là FBX nhị phân phiên bản 7400.

Bản thân toạ độ cũng không bị động tới. Khối lập phương 0,05 mét của chúng tôi vẫn là 0,05 trong file FBX, quả cầu 0,03 mét vẫn là 0,03, và các đối tượng nằm ở đúng độ cao như trong GLB. Không có gì bị nhân lên.

Còn trong engine thì thế nào lại phụ thuộc vào engine chứ không phải vào file. Theo thông lệ FBX tính đơn vị bằng xentimét còn glTF tính bằng mét, nên con số 0,05 vốn nghĩa là năm xentimét trong GLB có thể bị một trình nhập mặc định theo xentimét đọc thành nửa milimét. Nếu model vào mà nhỏ hoặc to gấp một trăm lần, chỗ cần sửa là thiết lập tỉ lệ nhập trong Unity, Unreal hay Maya, không phải chuyển đổi lại. Chúng tôi chỉ thử trong Blender và nó đọc lại đúng kích thước gốc.

Những thứ thật sự không có trong một file FBX

  • Nén Draco. Một file GLB có thể nén Draco xuống rất nhỏ, FBX không có cơ chế tương đương, nên trong trường hợp đó file FBX sẽ lớn hơn nhiều. Chúng tôi chưa thử file nén Draco.
  • Về nguyên tắc, chuyện gói gọn trong một file. FBX cũng có thể tham chiếu texture bên ngoài thay vì nhúng. File của chúng tôi thì nhúng, nhưng một file FBX bạn nhận từ nơi khác có thể không, nên hãy kiểm tra trước khi mang nó qua máy khác.
  • Khả năng dùng cho web. Nếu đích đến của bạn là trình duyệt hay một trình xem trên web thì chuyển sang FBX là đi ngược hướng hoàn toàn. Hãy giữ file GLB.
  • Những gì GLB vốn không có. Nếu GLB của bạn là một mesh tĩnh không có rig thì không phép chuyển đổi nào thêm bộ xương vào cho nó.

Kích thước file có thể đi cả hai chiều

Ở đây không có quy luật đơn giản, và ba lần thử của chúng tôi đi theo ba hướng khác nhau. Cảnh hai đối tượng thường thì nhỏ lại, từ 73.656 xuống 55.980 byte. Cảnh có texture lớn lên một chút, từ 43.548 lên 46.092 byte. Bộ xương thì lớn lên rất nhiều: 9.452 byte GLB thành 40.076 byte FBX, hơn bốn lần.

Quy luật đằng sau là FBX rất dài dòng khi mô tả bộ xương và các đường animation đã bake, còn với hình học thuần thì khá gọn. Vì vậy một nhân vật nhiều xương và nhiều animation sẽ phình lên nhiều nhất, điều đáng nhớ nếu bạn đang ở gần giới hạn tải lên theo chiều ngược lại.

File thử lớn nhất của chúng tôi chưa tới 75 KB, nên đây chỉ là tỉ lệ tương đối, không dùng để suy ra một nhân vật 200 MB sẽ ra sao.

Tự làm việc này trên máy của bạn

  • Blender là đường chuẩn mực và miễn phí: File, Import, glTF 2.0, rồi File, Export, FBX. Trong bảng xuất FBX, đặt Path Mode thành Copy và bật nút nhúng texture bên cạnh thì ảnh mới nằm trong file FBX chứ không nằm bên ngoài.
  • Nếu file là nhân vật có rig, hãy giới hạn phần xuất FBX ở Armature và Mesh trong danh sách loại đối tượng. Xuất kèm cả camera, đèn và empty là nguyên nhân thường gặp nhất khiến engine mọc ra những node lạ.
  • Unity và Unreal bản mới đều nhập được GLB trực tiếp, nên nếu đích đến là một trong hai, hãy kiểm tra xem bạn có thật cần file FBX hay không.
  • Autodesk FBX Converter là công cụ độc lập miễn phí, nhưng nó cũ và không đọc được glTF hay GLB, nên nó không giúp được gì cho chiều chuyển đổi này.

Giới hạn ở đây, và chuyện gì xảy ra với file của bạn

  • Miễn phí: tối đa 30 MB mỗi file, 10 lần chuyển đổi mỗi giờ, 2 việc chạy cùng lúc, không cần tạo tài khoản.
  • Pro: tối đa 1 GB mỗi file, 50 lần chuyển đổi mỗi giờ, 5 việc cùng lúc. File nhân vật có rig cán mốc 30 MB dễ hơn mesh tĩnh nhiều.
  • File bạn tải lên và kết quả đã chuyển đổi được xoá khỏi máy chủ của chúng tôi trong vòng 1 giờ kể từ lúc tải lên.
  • Từ GLB, trang này chuyển được sang FBX, OBJ, STL, GLTF và USDZ. Trong số đó, FBX và USDZ là hai định dạng mang được animation; OBJ và STL thì không.

Thử ngày 29 tháng 10 năm 2026 với ba file GLB dựng bằng Blender 5.1: một cảnh hai đối tượng có material màu trơn và animation quay 40 frame (73.656 byte), một cảnh tương tự nhưng material mang texture PNG 64 x 64 nhúng trong GLB cùng animation đó (43.548 byte), và một bộ xương skin gồm armature hai đốt, trọng số skin theo từng đỉnh và animation xương 30 frame (9.452 byte). Cả ba được chuyển sang FBX tại đây, nhập lại vào Blender 5.1 để đếm đối tượng, đỉnh, material, texture, xương, nhóm đỉnh và đường animation, đồng thời đọc trực tiếp file FBX để kiểm tra trục lên và hệ số đơn vị mà nó khai báo.

Câu Hỏi Thường Gặp

Trong lần thử của chúng tôi thì có. Chúng tôi chuyển một file GLB có armature hai đốt và trọng số theo từng đỉnh, file FBX trả về vẫn có đúng hai đốt xương đó, đúng hai nhóm trọng số đó, vẫn gắn vào bộ xương, và dữ liệu skin được lưu đúng cách thành một deformer skin với một cluster cho mỗi đốt kèm bind pose. Chúng tôi chỉ thử bộ xương hai đốt với một clip, nên bộ xương người đầy đủ hay nhiều clip trong cùng một file là chưa kiểm chứng, không phải đã xác nhận.