glTF JSON (.gltf)
ISO/IEC СтандартGL Transmission Format (glTF) е отворен стандарт и спецификация без лицензионни такси във формат JSON за ефективно предаване и зареждане на 3D сцени и модели от WebGL, WebGPU, гейминг двигатели и местни приложения.
Конвертиране на GLTF към GLB
Безплатен конвертор от GLTF към GLB в браузъра. Конвертирайте файлове незабавно на вашето устройство.
Инспектиране и метаданни
Операционните системи и файловите анализатори идентифицират glTF файлове чрез проверка на началната двоична байтова последователност:
Байтов подпис на хедъра (Magic Bytes)
Операционните системи и файловите анализатори идентифицират glTF файлове чрез проверка на началната двоична байтова последователност:
HEX ПОДПИС (ОФСЕТ 0):
7B 0A 20 20 22 61 73 73 65 74 22ASCII ПРЕДСТАВЯНЕ: {\n "asset"
Стандартизация: ISO/IEC 12113:2022 / Khronos Open Standard
Технически спецификации
| Контейнерна архитектура | Human-readable JSON document describing scene graph, nodes, meshes, accessors, materials, and animations, referencing external buffers |
| Компресия | External textures (PNG, JPEG, WebP) and optional Draco geometry compression |
| Поредност на байтовете (Endianness) | UTF-8 JSON text (referencing Little-Endian .bin buffers) |
| Цветови пространства | sRGB base color, Linear roughness/metallic |
| Канали и структура | Scene hierarchy, nodes, cameras, PBR materials, skinning skeletons, and morph targets |
| Максимални размери | Unbounded coordinate space and triangle count |
| Прозрачност | Alpha mode BLEND, MASK with cutoff threshold, or volumetric transmission |
| Стрийминг и прогресивно зареждане | Asynchronous loading: scene JSON loads instantly while heavy binary buffers stream in background |
Техническа сравнителна матрица: glTF спрямо конкуренти
| Технически атрибут | glTF (Текущ) | GLB | OBJ | FBX |
|---|---|---|---|---|
| Файлова архитектура | JSON текст на сцената + придружаващи .bin / текстури | Един самостоятелен двоичен файл | Обикновен текстов формат за върхове и лица + .mtl | Проприетарен двоичен/ASCII контейнер |
| Стандарти за PBR материали | Стандартизиран Metallic-Roughness PBR | Стандартизиран Metallic-Roughness PBR | Стари материали Phong/Lambert | Персонализирани проприетарни материали |
| Поддръжка на анимация | Скелетно обвързване (skinning) и морфинг цели | Скелетно обвързване (skinning) и морфинг цели | Няма (само статична геометрия) | Сложна анимация и кости |
| Производителност по време на изпълнение | Оптимизиран за WebGL и двигатели в реално време | Оптимизиран за WebGL и двигатели в реално време | Изисква бавен анализ и реконструиране | Изисква сложен анализ чрез десктоп SDK |
Често срещани режими на повреда и ръководство за хекс възстановяване
Грешка в 3D двигателя: „Failed to load buffer: URI not found".
Първопричина: Придружаващият двоичен файл .bin или изображенията с текстури не са били качени заедно с файла .gltf.
Възстановяване: Пакетирайте всички придружаващи файлове заедно или ги конвертирайте директно в един GLB файл с File2File.
Анализ на сигурността и вектори на атака към парсера
glTF JSON файловете препращат към външни URI адреси (data URI или отдалечени URL адреси), които могат да предизвикат заявка за фалшифициране от страна на сървъра (SSRF) или преминаване през папка (path traversal).
Известни вектори на атака
- Преминаване през папка чрез относителни URI адреси на буфери (напр. 'uri: ../../../etc/passwd').
- SSRF чрез извличане на отдалечени мрежови буфери в сървърни генератори на 3D миниатюри.
- Отказ от услуга чрез деформирани рекурсивни цикли в йерархията на възлите.
Защитни добри практики:
Исторически произход и етапи
Основни предимства и плюсове
- Четимата от хора JSON структура позволява програмно редактиране, скриптиране на работни процеси и визуална инспекция.
- Модулен дизайн: отделя леките метаданни на сцената от тежката двоична геометрия (.bin) и текстурите.
- Дефиницията на физически базирани материали (PBR) гарантира, че 3D активите изглеждат идентично във всички рендващи двигатели.
Технически ограничения и минуси
- Многофайлова сложност: споделянето на модел изисква архивиране в ZIP или пакетно обединяване на .gltf, .bin и картинните текстури заедно.
- Малко по-бавно първоначално мрежово стартиране в сравнение с еднофайловия GLB поради множество HTTP заявки.
- Зависимостите на относителните пътища могат да се счупят, ако придружаващите файлове с текстури бъдат преименувани или преместени.
Интересни технически факти
- glTF официално има прякора „JPEG на 3D", тъй като е изцяло насочен към предаване и показване по време на изпълнение, а не към създаване.
- Форматът е съоснован от Тони Паризи, който е съавтор на VRML (Virtual Reality Modeling Language) през 1994 г.
- НАСА предоставя 3D модели на марсоходи, сателити и астронавти за публично изтегляне във формат glTF.
Често задавани технически въпроси
Защо на моя glTF файл му липсват цветовете или формите?
Файлът .gltf съдържа само инструкциите за JSON сцената. Той разчита на придружаващи .bin файлове за 3D формите и .png/.jpg файлове за цветовете. Уверете се, че всички придружаващи файлове са в същата папка.
Как да превърна glTF файл в един единствен GLB файл?
Качете вашия .gltf файл заедно с придружаващите го .bin и текстори файлове в File2File.app, за да ги обедините в един единствен, самостоятелен .glb файл незабавно.
Кои програми поддържат glTF?
Blender, Three.js, Babylon.js, Unity, Unreal Engine, Godot и Windows 3D Viewer поддържат glTF директно.
Свързани двойки за конвертиране на glTF
Конвертирането на glTF JSON активи в glTF Binary контейнери обединява отделни текстови манифести, двоични буфери и текстури в един единствен файл за по-бърза доставка в уеб.
Конвертирането на GLB към GLTF разпакетира един двоичен контейнер в отделни текстови файлове и файлове с ресурси, за да могат разработчиците лесно да редактират текстури и код на триизмерна геометрия.
Конвертирането на геометрични файлове Wavefront OBJ в glTF JSON манифести модернизира статичните 3D модели в готови за уеб ресурси, които се зареждат незабавно в стандартни уеб браузъри.