Tệp nhị phân glTF (.glb)

ISO/IEC Tiêu chuẩn

Binary glTF (GLB) là định dạng nhị phân gói gọn trong một tệp duy nhất của tiêu chuẩn glTF 2.0, thường được ca ngợi là 'JPEG của đồ họa 3D' dùng cho đồ họa 3D dựa trên web, Thực tế Tăng cường (AR) và các công cụ trò chơi thời gian thực.

Chuyển đổi GLTF sang GLB

Trình chuyển đổi từ GLTF sang GLB miễn phí trên trình duyệt. Chuyển đổi tệp ngay lập tức trên thiết bị của bạn.

Kiểm tra & Siêu dữ liệu

Các hệ điều hành và trình phân tích tệp nhận dạng tệp GLB bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:

Chọn hoặc thả tệp vào đây

Riêng tư - tệp không bao giờ rời khỏi thiết bị của bạn

Hoặc dán Ctrl+V
Cam kết bảo vệ quyền riêng tư, không truyền dữ liệu qua mạng: 0 byte được tải lên máy chủ bên ngoài. Toàn bộ quá trình xử lý diễn ra cục bộ trong hộp cát trình duyệt của bạn.

Chữ ký ở đầu tệp (mẫu byte nhận diện)

Các hệ điều hành và trình phân tích tệp nhận dạng tệp GLB bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:

CHỮ KÝ HEX (OFFSET 0):

67 6C 54 46

BIỂU DIỄN ASCII: glTF

Tiêu chuẩn hóa: ISO/IEC 12113:2022 / Khronos Open Standard

Thông số kỹ thuật

Kiến trúc ContainerTiêu đề nhị phân 12 byte ('glTF', phiên bản, độ dài), tiếp theo là khối JSON (CHUNK 0) và khối bộ đệm nhị phân (CHUNK 1)
NénNén hình học lưới DRACO, KHR_texture_basisu (kết cấu GPU KTX2/Basis Universal) và ExtMeshopt
Thứ tự byteLittle-endian (tiêu chuẩn Intel x86 / WebGL)
Không gian màuKết cấu sRGB, Các kênh độ nhám/kim loại PBR tuyến tính
Kênh & Cấu trúcVật liệu PBR (Metallic-Roughness), lưới biến dạng theo bộ xương, mục tiêu biến dạng, hoạt ảnh, máy ảnh và đèn
Kích thước tối đaSố đỉnh và tam giác không giới hạn (hỗ trợ mô hình nhiều gigabyte)
Độ trong suốtĐộ phủ alpha (MASK), hòa trộn alpha (BLEND) và truyền qua thể tích
Truyền phát & Tăng dầnTệp độc lập duy nhất, có bảng độ lệch nhị phân để tải trực tiếp vào bộ đệm VBO của GPU

Ma trận so sánh kỹ thuật: GLB so với các đối thủ

Thuộc tính kỹ thuậtGLB (Hiện tại)GLTFUSDZFBX
Mô hình Đóng góiTệp nhị phân đơn khép kínJSON + các tệp .bin và kết cấu bên ngoàiKho lưu trữ ZIP chứa các lược đồ USD & kết cấuNhị phân/ASCII độc quyền của Autodesk
Tiêu chuẩn Web & ARKhả năng hỗ trợ tùy theo phần mềm.Khả năng hỗ trợ tùy theo phần mềm.Tiêu chuẩn Apple iOS Quick Look ARTiêu chuẩn nhập của công cụ trò chơi trên máy tính để bàn
Mô hình Vật liệuglTF PBR Metallic-Roughness chuẩn hóaglTF PBR chuẩn hóaKhả năng hỗ trợ tùy theo phần mềm.Bộ đổ bóng Phong/Lambert/PBR độc quyền
Hiệu suất Đọc GPUTức thì (ánh xạ bộ nhớ trực tiếp)Nhanh (nhiều yêu cầu mạng)Nhanh (các mục trong tệp ZIP không nén)Chậm (yêu cầu phân tích cú pháp phức tạp)

Các dạng hỏng thường gặp và hướng dẫn khôi phục bằng mã hex

Mô hình 3D hiển thị bị thiếu kết cấu hoặc có bề mặt đen tuyền.

Nguyên nhân gốc rễ: Khối dữ liệu kết cấu được nhúng bị hỏng hoặc thiếu tham chiếu đến kết cấu PBR metallic-roughness.

Khắc phục: Kiểm tra và sửa chữa các độ lệch khối (chunk offsets) bằng File2File.app 3D Converter hoặc glTF-Transform.

Phân tích bảo mật và các đường tấn công nhằm vào bộ phân tích cú pháp

Các bộ phân tích cú pháp GLB xử lý các khối văn bản JSON kết hợp với các bộ đệm nhị phân tùy ý, có thể gây ra lỗi tràn bộ đệm nếu độ dài bộ đệm không khớp.

Các véc-tơ tấn công đã biết

  • Đọc quá giới hạn bộ đệm khi bufferView byteOffset + byteLength vượt quá độ dài khối nhị phân.
  • Đọc chỉ mục đỉnh vượt quá giới hạn trong quá trình thực thi WebGL drawElements.
  • Từ chối dịch vụ thông qua các vòng lặp giải nén Draco bất thường.

Biện pháp phòng thủ tốt nhất: Xác thực nghiêm ngặt rằng tất cả các khoảng byte accessor và bufferView nằm bên trong ranh giới chunk nhị phân đã khai báo.

Nguồn gốc lịch sử và các cột mốc

2022glTF 2.0 và GLB được tiêu chuẩn hóa quốc tế bởi ISO/IEC với mã ISO/IEC 12113:2022.
2018Google áp dụng GLB làm định dạng 3D chuẩn cho Android Scene Viewer và trải nghiệm AR qua web <model-viewer>.
2015Khronos Group giới thiệu GLB như một bộ chứa nhị phân đơn tệp cho hệ sinh thái glTF.

Ưu điểm & Lợi ích chính

  • Hoàn toàn khép kín: đóng gói hình học 3D, vật liệu PBR, kết cấu (PNG/JPEG/KTX2) và hoạt ảnh khung xương vào một tệp duy nhất.
  • Tải trực tiếp lên GPU: các bộ đệm hình học nhị phân khớp với bố cục bộ nhớ WebGL / Vulkan mà không mất chi phí phân tích cú pháp của CPU.
  • Tiêu chuẩn không thể chối cãi cho WebGL, WebGPU, bản xem trước sản phẩm 3D thương mại điện tử và Thực tế Tăng cường di động.

Hạn chế & Nhược điểm kỹ thuật

  • Bản chất nhị phân khiến việc kiểm tra hoặc chỉnh sửa văn bản thủ công trở nên khó khăn nếu thiếu các công cụ 3D chuyên dụng.
  • Yêu cầu các thư viện giải nén Draco hoặc Basis Universal khi sử dụng các tiện ích mở rộng nén nâng cao.
  • Các nền tảng của Apple ưu tiên định dạng USDZ cho tính năng iOS Quick Look AR gốc, đòi hỏi phải chuyển đổi định dạng từ GLB.

Thông tin kỹ thuật thú vị

  • 4 byte đầu tiên của mọi tệp GLB là 0x67 0x6C 0x54 0x46, đánh vần chuỗi ASCII 'glTF'.
  • Khi xem một chiếc giày thể thao 3D trên trình duyệt web của điện thoại thông minh, bạn gần như chắc chắn đang xem một mô hình GLB tương tác.
  • GLB được thiết kế đặc biệt để phần cứng đồ họa có thể đọc các bộ đệm đỉnh trực tiếp từ đĩa vào VRAM mà không cần qua bước biến đổi nào.

Các câu hỏi kỹ thuật thường gặp

Sự khác biệt giữa glTF và GLB là gì?

glTF là một tệp JSON tham chiếu đến các tệp hình học .bin bên ngoài và các tệp kết cấu hình ảnh riêng biệt. GLB lấy toàn bộ gói đó và đóng gói nó thành một tệp nhị phân duy nhất, nhỏ gọn.

Làm thế nào để chuyển đổi GLB sang USDZ cho Apple AR?

Bạn có thể chuyển đổi các mô hình GLB thành tệp USDZ sẵn sàng cho Apple chỉ bằng một cú nhấp chuột bằng cách sử dụng File2File.app trực tiếp trong trình duyệt web của bạn.

Tôi có thể mở tệp GLB trong Blender không?

Có. Blender tích hợp sẵn một trình nhập và xuất glTF/GLB gốc, hiệu suất cao ngay trong phần mềm.