К моему сожалению, с форматом
glTF я столкнулся совсем недавно. Увидел рядом два файла — .gltf и .bin — и сначала не до конца понял, зачем они нужны и чем отличаются от привычного IFC. Тут моя фантазия разошлась: а сколько ещё форматов передачи данных в BIM я до сих пор не знаю? Начал разбираться — так и родился этот пост)))
Один объект — несколько форматов. Что мы вообще передаём?В одной программе можно увидеть сразу несколько кнопок: экспорт в glTF, сохранение IFC, выгрузка XML. На первый взгляд кажется, что система предлагает сохранить одну и ту же модель в разных расширениях. На деле каждый формат решает свою задачу и передаёт свой состав информации.
glTF и GLB — для быстрой визуализации. Основа glTF — JSON-описание трёхмерной сцены, при этом геометрия может храниться отдельно в .bin, а текстуры — в других файлах. GLB позволяет собрать всё в один бинарный файл. Такой формат удобен для браузерных просмотрщиков, мобильных приложений, презентаций и передачи лёгкой 3D-модели, но он не предназначен для полноценной передачи всей BIM-семантики исходного проекта.
IFC — для межпрограммного обмена. Это стандартизированное цифровое описание объектов капитального строительства и инфраструктуры. Через IFC можно передавать не только геометрию, но и классы элементов, свойства, пространственную структуру и связи. Но само расширение .ifc ещё не гарантирует качество: результат зависит от исходной модели, настроек экспорта, мэппинга и требований к данным.
XML — для структурированных данных. Это не отдельный формат BIM-модели, а универсальный текстовый способ описания информации. В XML можно передать объёмы, параметры, классификаторы, сметные данные, статусы или результаты проверок. Поэтому кнопка «Выгрузить в XML» без пояснений говорит мало: важно понимать структуру файла, состав полей и систему, которая будет его принимать. Два XML-файла могут иметь совершенно разное содержание и назначение.
На этом список не заканчивается.
BCF нужен для обмена замечаниями по модели: описаниями проблем, статусами, точками обзора и привязками к элементам. То есть IFC передаёт сам объект, а BCF — обсуждение того, что с ним не так.
COBie ориентирован на передачу структурированных данных об оборудовании и активах при переходе к эксплуатации.
gbXML используется для передачи информации из авторских BIM-систем в программы энергетического и инженерного анализа.
CityGML работает уже в масштабе города и территории, позволяя хранить и передавать виртуальные трёхмерные городские модели.
Получается, одна модель вполне может иметь несколько правильных выгрузок: glTF — для просмотра, IFC — для межпрограммного обмена, XML — для интеграции информационных систем, BCF — для замечаний, COBie — для эксплуатации, gbXML — для расчётов, CityGML — для городского масштаба.
Это не дублирование. Просто каждый формат отвечает на свой вопрос.
Поэтому спрашивать
«Какой формат лучше?» не совсем правильно. Сначала нужно понять, кто получит информацию, что с ней будут делать, какие данные необходимо сохранить и как потом проверить результат передачи. Иначе экспорт легко превращается в формальность: файл сформировали, отправили, галочку поставили — а что именно дошло до следующего участника процесса, уже никто не знает)))