Введение

Формат файла обмена для интерактивных 3D-приложений

COLLADA (от 'collaborative design activity' – совместная деятельность в области проектирования) – это формат файла обмена для интерактивных 3D-приложений. Он поддерживается некоммерческим технологическим консорциумом Khronos Group и принят ISO в качестве общедоступной спецификации ISO/PAS 17506. COLLADA определяет открытый стандарт XML-схемы для обмена цифровыми ресурсами между различными графическими программными приложениями, которые в противном случае могли бы хранить свои ресурсы в несовместимых форматах файлов. Документы COLLADA, описывающие цифровые ресурсы, представляют собой XML-файлы, обычно идентифицируемые расширением имени файла dae (digital asset exchange – обмен цифровыми ресурсами).

История

Первоначально разработанный Реми Арно и Марком С. Барнсом в Sony Computer Entertainment, он впоследствии перешел в собственность Khronos Group – финансируемого членами отраслевого консорциума, который теперь совместно владеет авторскими правами с Sony. Схема и спецификация COLLADA свободно доступны на сайте Khronos Group. COLLADA DOM использует лицензию SCEA Shared Source License 1.0. С самого начала разработки COLLADA, несколько графических компаний сотрудничали с Sony для создания инструмента, полезного для максимально широкой аудитории, и COLLADA продолжает развиваться благодаря усилиям участников Khronos. Среди первых партнеров были Alias Systems Corporation, Criterion Software, Autodesk, Inc. и Avid Technology. Десятки коммерческих игровых студий и игровых движков приняли этот стандарт. В марте 2011 года Khronos выпустила пакет COLLADA Conformance Test Suite (CTS). Этот пакет позволяет приложениям, импортирующим и экспортирующим COLLADA, тестироваться на большом наборе примеров, обеспечивая соответствие спецификации. В июле 2012 года программное обеспечение CTS было опубликовано на GitHub, что позволило привлекать вклад от сообщества. В июле 2012 года был опубликован стандарт ISO/PAS 17506:2012 «Системы промышленной автоматизации и интеграции. Спецификация схемы цифровых активов COLLADA для 3D-визуализации промышленных данных».

Программные инструменты

COLLADA изначально задумывался как промежуточный формат для переноса данных между различными программами для создания цифрового контента (DCC). Существуют приложения, поддерживающие работу с несколькими DCC, в том числе:

Физика

С версии 1.4 в стандарт COLLADA добавлена поддержка физики. Цель состоит в том, чтобы предоставить создателям контента возможность определять различные физические атрибуты в визуальных сценах. Например, можно определить свойства материала поверхности, такие как трение. Кроме того, создатели контента могут задавать физические атрибуты для объектов в сцене, определяя жесткие тела, которые должны быть связаны с визуальными представлениями этих объектов. Среди дополнительных возможностей – поддержка ragdolls, объемов столкновений, физических ограничений между физическими объектами и глобальных физических свойств, таких как гравитация. Продукты-промежуточные звенья для физических расчетов, поддерживающие этот стандарт, включают Bullet Physics Library, Open Dynamics Engine, PAL и NVIDIA PhysX. Эти продукты считывают данные, содержащиеся в файле COLLADA, и преобразуют их в формат, который промежуточное программное обеспечение может использовать для физического моделирования. Это также позволяет различным программным продуктам и инструментам обмениваться физическими данными в стандартизированном виде. Physics Abstraction Layer обеспечивает поддержку COLLADA Physics для множества физических движков, не имеющих встроенной поддержки COLLADA, включая JigLib, OpenTissue, Tokamak и True Axis. PAL также поддерживает взаимодействие COLLADA с физическими движками, которые имеют собственный интерфейс.

Версии

1.0: Октябрь 2004
1.2: Февраль 2005
1.3: Июнь 2005
1.4.0: Январь 2006; добавлены такие функции, как скиннинг и целевые деформации персонажей, динамика твердых тел, поддержка материалов OpenGL ES и эффекты шейдинга для различных языков шейдеров, включая язык программирования Cg, GLSL и HLSL. Первый релиз, распространяемый через Khronos. 1.4.1: Июль 2006; в основном патч-релиз. 1.5.0: Август 2008; добавлены кинематика и B-Rep, а также переработаны некоторые FX и поддержка OpenGL ES. Формализован как ISO/PAS 17506:2012.