2016-08-12 13 views
1

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

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

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

ответ

0

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

Никогда не Collada, но первая запись, когда Searchin на Google звучит как хорошая идея: http://www.greentoken.de/onlineconv/

0

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

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

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