Blender по-русски
Panda3D по-русски

суббота, 24 января 2009 г.

Импорт файлов из Blender

В данный момент существует два пути получения данных из Blender в Panda3D.

Вариант 1: Файлы формата X
Существует бесплатный плагин для Blender, который может экспортировать в "Х" (родной DirectX) формат файла. Сохраните файл из Blender как X файл, а затем загрузите его прямо в Panda3D, который может читать файлы формата X. В качестве альтернативы, если файл будет грузиться слишком долго и вам это не нравится, вы можете сконвертировать файл из X формата в Egg или Bam формат с помощью программ конвертирования, поставляемых с Panda3D (x2egg, egg2bam).

Так как вы сохранили модель в неродном формате, вы возможно зададитесь вопросом: "а поддерживает ли этот формат все, что мне нужно?". Например, когда вы сохраняете модель в формате 3DS, вы автоматически теряете все узлы и данные анимации, так как формат файла 3DS не содержит узлы и данные анимации. В случае X формата вы будете приятно удивлены: это достаточно мощный формат, поддерживающий вершины, полигоны, узлы и анимации.

Однако надо отметить, когда анимированный X файл конвертируется в egg, то результирующий egg файл проигрывает только ключевые кадры, но не те, что содержаться между ними. Например анимация, содержащая 200 фреймов может снизится до 40 кадров и воспроизведение будет выглядеть дрожащим (шатким). Эта шаткость случается потому, что X формат поддерживает концепцию ключевых кадров с неявными структурами, которые интерполируются между собой. Формат egg файла является явным. egg файл должен содержать все фреймы анимации, даже фреймы между ключевыми кадрами.

Поэтому, при конвертировании X файла с помощью x2egg будет опущено множество фреймов между ключевыми, и будет создана "шаткая" анимация. Единственное решение это убедиться что X файлы сгенерированы со всеми фреймами. Может потребоваться тестирование различных экспортеров в X из Blender.

Далее, родной формат Panda - egg поддерживает некоторые "эзотерические" вещи. Например он поддерживает blend targets (анимации морфа) и кривые путей движения, которые не поддерживаются в формате X.

Предостережение: недавно было обнаружено, что имеется два фага в парсере X-файлов panda. Один - это чувствительность к регистру, а его не должно быть. Второй - он не обрабатывает дефисы в идентификаторах некорректно. Эти два бага будут исправлены в следующей версии Panda3D. Для временного решения и обхода этих проблем, поищите на информацию форумах.

Вариант 2: Egg плагин-экспортер для Blender
Существует несколько плагинов Blender, разработанных пользователями Panda3D.

Плагин Chicken это наиболее обновляемый, документированный и функционально-законченный. Он поддерживает статические меши и анимацию арматуры, материалы, цвета вершин, альфа текстуры, тэги, типы объектов и т.д. Он также имеет продвинутые функции автоматического вызова инструментов Panda (egg2bam, egg-optchar и pview) и Motion Extraction. Вы можете найти плагин на http://chicken-export.sf.net

EggX - другой экспортер, который работает с материалами, не-процедурными текстурами, анимацией арматуры, статическими мешами. Его можно найти на http://www.wickwack.com/panda

Еще один экспортер с поддержкой только статических мешей можно найти по адресу http://xoomer.virgilio.it/glabro1/panda.html

Комментариев нет:

Отправить комментарий