Как отобразить файл Collada (.dae) на Android с поддержкой слоев?

Проект, над которым я работаю, — приложение дополненной реальности для Android. Мне нужно каким-либо образом отобразить 3D-объекты в формате файла Collada (.dae). Клиент хочет использовать Collada, потому что в этот формат легко экспортировать 3D-проекты, а .dae поддерживает систему слоев. К сожалению, библиотеки и фреймворки, которые я использую, никак не поддерживают формат .dae (ARToolkit и Android SDK + NDK). И не рекомендуется работать с такими файлами на мобильном телефоне. Поддерживаются простые форматы .obj и OpenSceneGraph (.ive, .osg, .osgb). Они отображаются в Android с помощью OpenGL ES напрямую или с использованием фреймворка OpenSceneGraph. Я тихо расстроен и не знаю, какой путь выбрать:

  1. Написать какой-нибудь скрипт для преобразования файла .dae collada в файл .obj? С таким количеством файлов .obj, сколько слоев учитывается в файле collada. А переключение между этими объектами будет имитацией добавления/удаления слоев.
  2. Или, может быть, вы используете фреймворк OpenSceneGraph, конвертируете колладу в .osg или .ive? Я пока не знаю, как OSG работает со слоями.

Не могли бы вы дать совет, куда двигаться в этой ситуации? Или, возможно, есть способ, которого я не вижу.


person TheWalkingDelirium    schedule 12.08.2016    source источник


Ответы (2)


DAE/COLLADA — это формат создания контента, но НЕ хороший формат окончательного распространения.

Инструменты разработки работают с DAE, но вам не следует использовать их в окончательной среде выполнения. Когда файл будет завершен, используйте сборку OSG, скомпилированную на ПК, для преобразования DAE в OSGB (или IVE) и распространяйте ЭТО. Загружать намного проще.

Зависимые библиотеки, необходимые загрузчику OSG COLLADA, очень сложно собрать на Android или iOS.

person XenonofArcticus    schedule 17.08.2016

Да, на мобильных устройствах вы должны использовать .obj, который намного быстрее загружается из-за его природы.

Никогда не использовал collada, но первая запись при поиске в Google кажется хорошей идеей: http://www.greentoken.de/onlineconv/

person shalafi    schedule 15.08.2016