glTF-контейнер (.glb)
ISO/IEC СтандартБінарний glTF (GLB) - це самодостатній двійковий контейнер стандарту glTF 2.0 в одному файлі, який широко називають «JPEG для 3D» у сфері вебграфіки, доповненої реальності (AR) та ігрових рушіїв реального часу.
Конвертувати з GLTF у GLB
Безкоштовний конвертер з GLTF у GLB у браузері. Миттєво конвертуйте файли на своєму пристрої.
Аналіз та метадані
Операційні системи та аналізатори файлів ідентифікують файли GLB, перевіряючи початкову послідовність бінарних байтів:
Сигнатура заголовка на байтовому рівні (Magic Bytes)
Операційні системи та аналізатори файлів ідентифікують файли GLB, перевіряючи початкову послідовність бінарних байтів:
ШІСТНАДЦЯТКОВА СИГНАТУРА (ЗСУВ 0):
67 6C 54 46ASCII-УЯВЛЕННЯ: glTF
Стандартизація: ISO/IEC 12113:2022 / Khronos Open Standard
Технічні характеристики
| Архітектура контейнера | 12-byte binary header ('glTF', version, length) followed by JSON chunk (CHUNK 0) and binary buffer chunk (CHUNK 1) |
| Стиснення | DRACO mesh geometry compression, KHR_texture_basisu (KTX2/Basis Universal GPU textures), and ExtMeshopt |
| Порядок байтів (Endianness) | Little-Endian (Intel x86 / WebGL standard) |
| Колірні простори | sRGB textures, Linear PBR roughness/metallic channels |
| Канали та структура | PBR materials (Metallic-Roughness), skinned skeletal meshes, morph targets, animations, cameras, and lights |
| Максимальні розміри | Unbounded vertex and triangle count (supports multi-gigabyte models) |
| Прозорість | Alpha coverage (MASK), alpha blending (BLEND), and volumetric transmission |
| Потокове та прогресивне завантаження | Single self-contained file with binary offset tables for direct GPU VBO loading |
Технічна матриця порівняння: GLB проти конкурентів
| Технічний атрибут | GLB (Поточний) | GLTF | USDZ | FBX |
|---|---|---|---|---|
| Модель пакування | Один самодостатній бінарний файл | JSON + зовнішні файли .bin та текстури | ZIP-архів схем USD та текстур | Проприєтарний бінарний/ASCII формат Autodesk |
| Стандарт Веб і AR | Універсальний стандарт WebGL та Android AR | Універсальний стандарт WebGL (багатофайловий) | Стандарт Apple iOS Quick Look AR | Стандарт імпорту для десктопних ігрових рушіїв |
| Модель матеріалів | Стандартизований glTF PBR Metallic-Roughness | Стандартизований glTF PBR | Універсальна схема матеріалів Pixar PBR | Проприєтарні шейдери Phong/Lambert/PBR |
| Швидкість читання GPU | Миттєва (пряме мапування пам'яті) | Швидка (множинні мережеві запити) | Швидка (незжаті елементи ZIP) | Повільна (потребує складного парсингу) |
Типові режими пошкодження та посібник з відновлення в шістнадцятковому форматі
3D-модель відображається з відсутніми текстурами або суцільними чорними поверхнями.
Першопричина: Пошкоджений вбудований фрагмент текстури або відсутнє посилання на PBR-текстуру металізації-шорсткості.
Відновлення: Перевірте та відновіть зміщення фрагментів за допомогою File2File 3D Converter або glTF-Transform.
Аналіз безпеки та векторів атак на парсери
Аналізатори GLB обробляють текстові фрагменти JSON у поєднанні з довільними двійковими буферами, що може призвести до переповнення буфера у разі невідповідності довжин буферів.
Відомі вектори атак
- Перевищення межі буфера, коли byteOffset + byteLength для bufferView перевищує довжину бінарного чанку.
- Вихід за межі масиву індексів вершин під час виконання WebGL drawElements.
- Відмова в обслуговуванні через патологічні цикли декомпресії Draco.
Захисні найкращі практики:
Історичне походження та віхи
Головні переваги та плюси
- Повністю самодостатній: об'єднує 3D-геометрію, матеріали PBR, текстури (PNG/JPEG/KTX2) та скелетну анімацію в один файл.
- Пряме завантаження в GPU: двійкові буфери геометрії відповідають макетам пам'яті WebGL / Vulkan без витрат ресурсів CPU на синтаксичний аналіз.
- Беззаперечний стандарт для WebGL, WebGPU, е-комерції з переглядом 3D-товарів та мобільної доповненої реальності.
Технічні обмеження та мінуси
- Двійкова структура ускладнює ручний перегляд тексту або редагування без спеціалізованих 3D-інструментів.
- Вимагає бібліотек декомпресії Draco або Basis Universal у разі використання розширених розширень стиснення.
- Платформи Apple віддають перевагу USDZ для нативного перегляду в iOS Quick Look AR, що вимагає конвертації формату з GLB.
Цікаві технічні факти
- Перші 4 байти кожного файлу GLB - це 0x67 0x6C 0x54 0x5F, що в ASCII утворює рядок 'glTF'.
- Коли ви розглядаєте 3D-кросівки у веббраузері смартфона, ви майже напевно дивитеся на інтерактивну модель GLB.
- GLB був спеціально розроблений так, щоб апаратне забезпечення графіки могло читати буфери вершин прямо з диска у VRAM без будь-яких трансформацій.
Поширені технічні запитання
У чому різниця між glTF та GLB?
glTF — це JSON-файл, який посилається на зовнішні .bin файли геометрії та окремі файлы текстур зображень. GLB об'єднує весь цей набір в один компактний бінарний файл.
Як конвертувати GLB у USDZ для Apple AR?
Ви можете конвертувати моделі GLB у готові для Apple файли USDZ в один клік за допомогою File2File.app безпосередньо у вашому веббраузері.
Чи можна відкривати файли GLB у Blender?
Так. Blender містить вбудований та високопродуктивний імпортер і експортер glTF/GLB безпосередньо в самому програмному забезпеченні.
Пов'язані пари конвертації GLB
Конвертація активів glTF JSON у бінарні контейнери glTF об'єднує окремі текстові маніфести, бінарні буфери та текстури в один файл для швидшої доставки через веб.
Конвертація GLB у GLTF розпаковує єдиний бінарний контейнер у окремі текстові файли та файли ресурсів, що дозволяє розробникам легко редагувати текстури та код 3D-геометрії.