3D-модель glTF (.gltf)
ISO/IEC СтандартФормат передачи glTF (GL Transmission Format) - это открытая, не облагаемая роялти спецификация JSON для эффективной передачи и загрузки 3D-сцен и моделей в WebGL, WebGPU, игровых движках и нативных приложениях.
Конвертировать из GLTF в GLB
Бесплатный конвертер из GLTF в GLB прямо в браузере. Конвертируйте файлы мгновенно на вашем устройстве.
Анализ и метаданные
Операционные системы и анализаторы файлов идентифицируют файлы glTF по начальной двоичной последовательности байтов:
Сигнатура заголовка на уровне байтов (Magic Bytes)
Операционные системы и анализаторы файлов идентифицируют файлы glTF по начальной двоичной последовательности байтов:
HEX-СИГНАТУРА (СМЕЩЕНИЕ 0):
7B 0A 20 20 22 61 73 73 65 74 22ПРЕДСТАВЛЕНИЕ ASCII: {\n "asset"
Стандартизация: ISO/IEC 12113:2022 / Открытый стандарт Khronos
Технические спецификации
| Архитектура контейнера | Читаемый человеком документ JSON, описывающий граф сцены, узлы, сетки, аксессоры, материалы и анимацию со ссылками на внешние буферы |
| Сжатие | Внешние текстуры (PNG, JPEG, WebP) и дополнительное сжатие геометрии Draco |
| Порядок байтов (Endianness) | Текст UTF-8 JSON (ссылающийся на буферы .bin с прямым порядком байтов) |
| Цветовые пространства | Базовый цвет sRGB, Линейная шероховатость / металличность |
| Каналы и структура | Иерархия сцены, узлы, камеры, материалы PBR, скелеты скининга и целевые морфы |
| Макс. габариты | Неограниченное координатное пространство и количество треугольников |
| Прозрачность | Режим прозрачности BLEND, MASK с пороговым значением отсечения или объемное пропускание |
| Потоковая передача и прогрессивная загрузка | Асинхронная загрузка: JSON сцены загружается мгновенно, пока тяжелые двоичные буферы передаются в фоновом режиме |
Техническая матрица сравнения: glTF против конкурентов
| Технический атрибут | glTF (Текущий) | GLB | OBJ | FBX |
|---|---|---|---|---|
| Архитектура файла | Текст сцены JSON + сопутствующие .bin / текстуры | Один автономный двоичный файл | Обычный текст вершин и граней + .mtl | Проприетарный двоичный или текстовый контейнер |
| Стандарты материалов PBR | Стандартизированный Metallic-Roughness PBR | Стандартизированный Metallic-Roughness PBR | Устаревшие материалы Phong/Lambert | Пользовательские проприетарные материалы |
| Поддержка анимации | Скелетный скининг и целевые морфы | Скелетный скининг и целевые морфы | Отсутствует (только статическая геометрия) | Сложная анимация и кости |
| Производительность выполнения | Оптимизировано для WebGL и движков реального времени | Оптимизировано для WebGL и движков реального времени | Требует медленного разбора и восстановления | Требует сложного разбора SDK для ПК |
Типичные режимы повреждения и руководство по восстановлению в HEX
Ошибка 3D-движка: 'Failed to load buffer: URI not found' (Не удалось загрузить буфер: URI не найден).
Первопричина: Сопутствующий двоичный файл .bin или изображения текстур не были загружены вместе с файлом .gltf.
Восстановление: Запакуйте все сопутствующие файлы вместе или конвертируйте их напрямую в единый файл GLB с помощью File2File.
Анализ безопасности и векторы атак на парсер
Файлы glTF JSON ссылаются на внешние URI ( URI данных или удаленные URL-адреса), что может спровоцировать подделку запросов на стороне сервера (SSRF) или обход каталога.
Известные векторы атак
- Обход каталога с помощью относительных URI буферов (например, 'uri: ../../../etc/passwd').
- SSRF через удаленную загрузку буферов по сети в генераторах 3D-эскизов на стороне сервера.
- Отказ в обслуживании из-за некорректных циклических иерархий узлов.
Защитные лучшие практики: Запретите удаленные URL-адреса и выполняйте нормализацию всех путей к локальным буферам перед загрузкой.
Исторические истоки и вехи
Ключевые преимущества и плюсы
- Читаемая человеком структура JSON позволяет производить программное редактирование, написание сценариев для конвейеров обработки и визуальный контроль.
- Модульная конструкция: отделяет легкие метаданные сцены от тяжелой двоичной геометрии (.bin) и текстур.
- Определение материалов на основе физически достоверного рендеринга (PBR) гарантирует идентичный внешний вид 3D-активов во всех движках.
Технические ограничения и минусы
- Сложность использования нескольких файлов: для передачи модели требуется архивация или объединение файлов .gltf, .bin и изображений текстур.
- Немного более долгий начальный сетевой запуск по сравнению с однофайловым GLB из-за множества HTTP-запросов.
- Зависимости от относительных путей могут нарушиться, если сопутствующие файлы текстур будут переименованы или перемещены.
Интересные технические факты
- Формат glTF официально называют «JPEG для 3D», так как он ориентирован строго на передачу и отображение во время выполнения, а не на создание.
- Одним из сооснователей формата является Тони Паризи, который в 1994 году также создал язык VRML (Virtual Reality Modeling Language).
- NASA предоставляет 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 в манифесты JSON glTF модернизирует статические трехмерные модели в веб-ресурсы, которые мгновенно загружаются в стандартных веб-браузерах.