2009-06-22 3 views
17

Я собираюсь написать импортер COLLADA на Java. Нет никаких заранее написанных импортеров, и даже если бы я был, вероятно, был бы придирчивым, поэтому я считаю, что это лучше всего. Я собираюсь с COLLADA 1.4, потому что мне не нужны функции 1.5, и многие программы еще не поддерживают его. Я нашел для него spec и планирую следовать за ним, но гораздо проще следовать примеру и ссылаться на спецификацию для получения дополнительной информации.Примеры файлов COLLADA для разработки импортера?

Итак, со всем этим ... Могут ли некоторые из вас, кто испытал в COLLADA, указать мне на некоторые простые модели, которые я могу использовать, чтобы изучить и протестировать моего импортера, когда я его напишу? Я буду экспортировать несколько с помощью только геометрии, но мне нужны некоторые текстуры или материалы, анимация скелета и ключевого кадра и т. Д. Любые предложения?

В качестве альтернативы, я знаю, что Blender может экспортировать COLLADA 1.4 и импортировать большинство форматов. Если у вас есть действительно хорошее предложение для сайта с простыми 3D-моделями в другом формате, который я просто импортирую и экспортирую как COLLADA, это тоже будет хорошо!

Спасибо!

+1

Привет, вам когда-либо удалось найти или создать хороший импортер COLLADA для Java? Только спросите, потому что я сейчас ищу вокруг. – mikera

ответ

15

Я знаю два приличных места, по крайней мере:

Сайт Google имеет много Collada файлов, thingiverse еще больше на пути СТЛ (Sterio литография) файлы.

1

Проблема заключается в том, что, насколько я знаю, нет инструмента (по крайней мере, доступного для общественности), который поддерживает полную спецификацию Collada (особенно 1.5). Часть, которая в большинстве случаев хорошо протестирована и развита, представляет собой элемент геометрии-библиотеки, материалы и т. Д., Которые в 1.5 обычно берутся из некоторой реализации 1.4 (поэтому инструменты, которые обычно утверждают, что они поддерживают 1.5, фактически не являются (физика, кинематика и т. д. в большинстве случаев отсутствуют или находятся в плохом состоянии). Тем не менее вы можете легко создавать приличные (так как в геометрии часть ОК, но остальное - возможно, возможно, нет) достаточно файлов Collada с использованием различных экспортных функций, в основном, программного обеспечения для 3D моделирования (Blender, Maya, 3ds Max, CATIA и т. Д.). OpenRAVE (используется для планирования маршрутов робототехники) на самом деле имеет одну из лучших возможностей экспорта/импорта, когда дело доходит до COLLADA и даже поддерживает (частично) 1.5 функции, такие как кинематика.

Если вы решили использовать Blender, например (бесплатный и открытый исходный код, чтобы вы могли реально посмотреть, как работает надстройка импорта/экспорта), вы можете создать что-то простое или c omplex и экспортировать его как COLLADA 1.4 (не 1.5!). OpenRAVE, например, использует собственный XML-формат, который внутренне конвертируется в Collada (чтобы скрыть сложность этого стандарта) и позволяет даже внедрять другие форматы (в основном для геометрической части), такие как OBJ, что очень много проще найти инструмент для импорта/экспорта decend. Группа Khronos фактически предоставляет OpenCollada (OpenRAVE и многие другие используют ее внутренне, что, конечно же, приводит к ошибкам во всех случаях, когда что-то плохо реализовано в OpenCollada: P). Библиотека Assimp также предлагает довольно много, но главной проблемой является дезинформация, которую она дает на основе того, что она фактически поддерживает со стандартом Collada. На самом деле очень сложно найти ссылку на реализованные функции, когда дело доходит до Collada, и, к сожалению, недавно я начал использовать 1.5 (кинематику), чтобы узнать, что Ассимп поддерживает только 1.4 и связан с ним настолько, что он вызывает ошибки у вас, когда он сталкивается с типичным элементом 1.5 (даже если он пуст!), который omho является очень плохой реализацией на стороне разработчиков. В списке поддерживаемых форматов сайт Assimp содержит только Collada, и никакая версия не указана.

Я знаю, что этот вопрос старый и ответил, но я надеюсь, что эта информация поможет.Я сам пишу парсер в C# для внутреннего использования, где я сейчас работаю, и это настоящая боль, чтобы узнать, насколько плохо поддерживается этот стандарт ISO. Сложность Collada огромна, но именно поэтому она считается конвейерным форматом, а не тем, что вы должны использовать в конечном продукте, который обеспечивает хорошую производительность (скорость и хранение).

2

Загрузить Assimp «Библиотека импорта открытого актива» от http://assimp.sourceforge.net/main_downloads.html. Он имеет целую кучу файлов Collada (в тесте/моделях/Collada), которые он использует для своих тестовых наборов.

+1

Или возьмите файлы непосредственно из github https://github.com/assimp/assimp/tree/master/test/models/Collada – Akkumulator

0

Blendswap.com - отличный сайт с множеством моделей для Blender. Как только вы зарегистрируетесь для учетной записи, вы можете скачать их бесплатно. Вы даже можете использовать большинство моделей на сайте коммерчески. Перед тем, как скачать его, вы узнаете, если вы должны дать автору кредит, хотя некоторые из моделей можно использовать без предоставления кредита, хотя это все же рекомендуется. Имейте в виду, что для загрузки существует ограничение на 200 МБ в месяц. Существует много моделей, размер которых равен 1 МБ, поэтому перед загрузкой проверьте размер файла. Затем вы можете использовать экспортера Collada в Blender. Обязательно проверьте настройки экспортера Collada.

Смежные вопросы