Сжатие вершин GLTF

Упрощайте и кодируйте геометрию GLTF, скачивайте оптимизированный GLB.

Рабочая область

Перетащите файлы сюда

или нажмите, чтобы выбрать, поддерживается вставка

Об инструменте

Инструмент принимает .gltf (с .bin и текстурами). Выполняется упрощение сетки и кодирование через Meshopt (рекомендуется) или Draco. На выходе вы получаете оптимизированный GLB. Текстуры не изменяются. Вся обработка выполняется локально в вашем браузере.

Советы

  • 1Загружайте .gltf вместе с .bin и текстурами
  • 2Meshopt и Draco нельзя использовать одновременно
  • 3Сначала упрощение сетки, затем кодирование контейнера

Как пользоваться

  1. Загрузите GLTF-файл

    Перетащите .gltf и связанные ресурсы

  2. Настройте упрощение GLTF

    Выберите упрощение и Meshopt или Draco

  3. Сожмите GLTF и скачайте

    Скачайте оптимизированный GLB

Описание параметров конфигурации

Вершины / Геометрия

ПараметрЧто делаетПо умолчанию / диапазон

Упрощение сетки

Использует алгоритм упрощения сетки для уменьшения числа граней и вершин. По умолчанию средняя интенсивность; увеличение интенсивности сильнее уменьшает размер, но может потерять детали поверхности. Изменяет только геометрическую плотность, не меняет формат контейнера.50%0% – 100% · step 5%

Сжатие Meshopt

Применяет EXT_meshopt_compression к glTF/GLB, сжимая буферы геометрии без изменения числа граней. Включено по умолчанию для удобной загрузки. Взаимно исключает Draco. Не используется для выходных форматов, отличных от glTF (STL, OBJ, FBX).
  • ВклРекомендуется: По умолчанию. Включает сжатие Meshopt.
  • Выкл: Не записывать расширение Meshopt.
Вкл

Уровень Meshopt

Управляет стратегией кодирования Meshopt. По умолчанию «Высокий»: обычно меньший размер и включает фильтры атрибутов, подходит для большинства веб-сценариев. «Средний» равномерно квантует больше атрибутов, может быть более консервативным для некоторых инструментов.
  • ВысокийРекомендуется: По умолчанию. Более агрессивное сжатие с фильтрами, обычно меньше размер.
  • Средний: Более равномерное квантование, обычно немного меньшее сжатие.
Высокий

Сжатие Draco

Применяет KHR_draco_mesh_compression к glTF/GLB. Часто меньше Meshopt, но декодирование требовательнее. Выключено по умолчанию; взаимно исключает Meshopt. Не используется для не-glTF форматов.
  • ВыклРекомендуется: По умолчанию. Не записывать расширение Draco.
  • Вкл: Включить Draco (отключает Meshopt).
Выкл

Степень сжатия

Компромисс скорости кодирования/декодирования Draco от 1 до 10. Более высокие значения отдают приоритет размеру, кодирование медленнее. По умолчанию 6 подходит для большинства моделей.61 – 10

Метод кодирования

Метод топологического кодирования Draco. По умолчанию Edgebreaker, обычно лучше сжимает треугольные сетки. Sequential может быть более подходящим для некоторых сценариев с упорядоченными полосами/точками.
  • EdgebreakerРекомендуется: По умолчанию. Подходит для обычных треугольных сеток.
  • Последовательный: Подходит для особых топологий, таких как упорядоченные полосы.
Edgebreaker

Quantization bits

Отображается в расширенных настройках интерфейса. Точность атрибутов вершин, когда Meshopt или Draco записывают glTF. По умолчанию: position 14, normal 10, UV 12. Меньше бит сильнее сжимает файл, но повышает риск щелей, артефактов затенения и UV.

Биты позиции

Биты квантования атрибута POSITION (8, 16). По умолчанию 14: хороший баланс между размером и риском разрывов. Слишком низкое значение может вызвать зазоры или дрожание.148 – 16

Сведения о формате

Формат входа

Расширение:
gltf, glb
Полное название:
Формат передачи графики (glTF 2.0)
Тип:
3D-сцена
Формат:
GLTF
Инструменты:
Three.js、Babylon.js、Blender
Описание:
glTF: открытый стандартный 3D-формат от Khronos, который часто называют JPEG в мире трёхмерной графики: структура сцены описывается в JSON, геометрия лежит в отдельных файлах .bin, а текстуры подключаются снаружи, что позволяет догружать и стримить содержимое. glTF 2.0 стал основным форматом обмена трёхмерным контентом для веба, мобильных приложений и игровых движков. В отличие от GLB, glTF состоит из нескольких файлов, что удобно для загрузки по требованию через CDN и переиспользования ресурсов, но повышает риск потерянных ссылок. Для сцен одним файлом и простой передачи надёжнее GLB, а для тонкого контроля загрузки и частичных обновлений гибче glTF.

Примечания:

  • Внешние ресурсы (.bin, текстуры) должны храниться вместе
  • Может потребоваться дополнительный инструментарий для CAD-задач

Поддерживаемые возможности:

  • Распространённый 3D-формат

Формат выхода

Расширение:
glb
Полное название:
Бинарный формат передачи графики (со сжатием)
Тип:
3D-модель
Формат:
Бинарный (glTF 2.0) со сжатием Draco и текстур
Инструменты:
Three.js、Babylon.js
Описание:
Сжатый вариант GLB использует геометрическое сжатие Draco и (или) оптимизацию текстур: размер файла заметно уменьшается без потери визуального качества.

Примечания:

  • Модели, закодированные Draco, требуют декодер Draco для рендеринга
  • Размер файла можно уменьшить на 50-90% в зависимости от настроек

Поддерживаемые возможности:

  • Сжатие геометрии Draco (до 90% уменьшения)
  • Конвертация текстур в форматы WebP/JPEG
  • Упрощение сетки с настраиваемой интенсивностью
  • Сохранение исходных PBR-материалов и иерархии сцены

Часто задаваемые вопросы

Смотреть все частые вопросы
Q

Почему нельзя скачать результат в формате .gltf?

A

Сжатая модель сохраняется как единый оптимизированный GLB-файл: один бинарный файл со встроенной геометрией удобнее переносить и подключать в движках. GLB загружается быстрее, чем .gltf с внешними .bin и текстурами, и его проще размещать на хостинге.

Q

Что декодируется быстрее: Meshopt или Draco?

A

Meshopt спроектирован для быстрого декодирования в вебе и на мобильных устройствах, поэтому он рекомендуется по умолчанию для производительности загрузки. Draco обычно даёт меньший размер файла, но требует больше времени на декодирование. Для одной геометрии можно выбрать только один из этих кодеков.

Q

Текстуры сохранятся?

A

Да. Инструмент обрабатывает только буферы геометрии, а текстуры встраиваются в выходной GLB в исходном виде. Потери качества текстур не происходит.

Q

Можно ли выполнить только упрощение, без Meshopt или Draco?

A

Да. Если отключить кодирование контейнера, инструмент выполнит только упрощение сетки, но результат всё равно будет сохранён в виде оптимизированного GLB. Это удобно, когда нужно уменьшить количество полигонов без перекодирования буферов.

Q

Что такое кодирование Draco?

A

Draco, это библиотека Google с открытым исходным кодом для сжатия 3D-геометрии и облаков точек. Она уменьшает буферы сетки до 90% с почти незаметной потерей качества. Meshopt является альтернативой: он декодируется быстрее, но иногда даёт файл чуть большего размера.

Q

Сжатая модель будет работать в Three.js?

A

Да. Three.js загружает GLB и GLTF нативно, а также поддерживает Draco через DRACOLoader и Meshopt через MeshoptDecoder. Подключите соответствующий декодер в проект. Для Meshopt декодер находится в папке examples библиотеки three.