Этот файл показывает как экспортировать анимацию для Blender 2.49b
--------------------------------------------------------------------
ЗАПУСК
"MB_TRF_Exporter.py" должен быть в той же папке с .blend файлом. Или если Вы думаете Blender не сможет найти экспортируемые файлы, скопируйте этот файл: "MB_TRF_Exporter.py" в эту позицию:
# Windows XP: C:\Program Files\Blender Foundation\Blender\.blender\scripts
# Windows XP (alt): C:\Documents and Settings\USERNAME\Application Data\Blender Foundation\Blender\.blender\scripts
# Windows Vista: C:\Users\USERNAME\AppData\Roaming\Blender Foundation\Blender\.blender\scripts
--------------------------------------------------------------------
СОЗДАНИЕ АНИМАЦИЙ
Перед запуском читаем эти два правила:
-Не редактировать скелеты в edit mode(наверное нужно просто создать копию файла над которым и будешь колдовать :). Если Вы редактируете output animations будет поврежден для игры.
-Масштабирование не влияет на созданную анимацию, так что Вы можете не использовать это.
1- Открыть панель действий
2- Нажмите кнопку "Добавить новое действие(add a new action) и введите имя.
4- Выберете скелет в object mode и затем откройте pose mode.
5- Первое действие, сделайте позу.
Нажмите 'I' на панели View 3D и выберите Rot или LocRot
Экспортеру нужны величины вращения ipo кривых. Итак, Вам нужно выбирать Rot или LocRot.
6- Готова анимация.
7- Имена костей IpoCurve должны быть в формате "action_name.bone_name".
Откройте Ipo-Curve Editor и Панель Действий вместе.
Выберите Pose Mode из Редактора Ipo-Curve.
Выберитесь кость из редактора действия, Вы увидите как это было именем ipo кривой в редакторе ipo- кривой.
Переименуйте имя ipo кривой в action_name.bone_name
Повторите это для всех костей.
Пример:
Имя кости: Tail
Имя Действия: Jump
Имя IpoCurve: Jump.Tail
--------------------------------------------------------------------
ЭКСПОРТ АНИМАЦИИ
1- Открытый текстовый редактор.
2- Выбирете "M&B animation.py"
3- Изменить SKELETON_TYPE на skel_human для экспорта человеческой анимации
Изменить SKELETON_TYPE на skel_horse для экспорта лошадиной анимации
4- Изменить ANIMATION_NAME в ваше имя действия.
ANIMATION_NAME будет использован в в игре.
5- Измените ПУТЬ в выходную позицию. Используйте расширения ".trf" в файловом имени.
6- До того как запустить скрипт убедитесь что вы выбрали правильный скелетон в 3d view panel и правильный на панели действий.
7- В текстовом редакторе, выберите Text->Run Python Script или нажмите ALT+P.
8- Теперь у вас есть ваша анимация в trf формате.
9- Пример скрипта:
from TRF_Animation_Exporter import *
exporter = Exporter()
skel_horse = Skeleton("skel_horse","anim_horse")
exporter.open("C:/animation_horse.trf")
exporter.write_skeleton_anims()
exporter.file.write("\nend\n")
exporter.close()
print "finished."
--------------------------------------------------------------------
ЭКСПОРТ MESH
1- Откройте текстовый редактор.
2- Выбирете "M&B mesh.py"
3- Вам нужно изменить MESH_NAME и PATH
3- MESH_NAME - имя сетки, которая будет экспортирована
4- PATH является путем выходного файла, может быть в формате "C:/output.trf".
5- используйте SKELETON_NAME, AUTOSMOOTH в опциях.
6- Если mesh оснащена, имя записи скелета на SKELETON_NAME
Если mesh не оснащена, Вы можете записать "" в SKELETON_NAME Область(Сделайте это пустым)
8- AUTOSMOOTH должен быть 120 если Вы не вводите что-нибудь на там.
9- В текстовом редакторе, выберите Text-Run Python Script или нажмите ALT+P.
10- Выходной trf файл должен быть в желаемой локации.
11- Пример скрипта:
import Exporter
from Exporter import *
exporter = Exporter()
exporter.add_mesh(Mesh_obj("armor1"))
exporter.add_mesh(Mesh_obj("armor2","",0,90))
exporter.add_mesh(Mesh_obj("armor3","skel_human",0,120))
exporter.open("C:/armor_meshes.trf")
print ("exporting " + exporter.file_name)
exporter.write_meshes()
exporter.file.write("\nend\n")
exporter.close()
print "finished."
--------------------------------------------------------------------
ЭКСПОРТ ТЕЛА
1- Пока Вы создаете тела физики, Вы можете использовать icosphere и цилиндр.
Убедитесь Вы не редактируете им в режиме редактирования. Вы должны использовать шкалу, захват, сдвиг в объектном режиме.
Поскольку Вы можете делать все в сферу и цилиндр в объектном режиме, экспортер не экспортирует изменения режима редактирования для тел.
Когда Вы рассматриваете информацию трансформации (клавиша N), все масштабируемые величины icosphere должны соответствовать.
2- Вы должны назвать имена тела в этом формате:
Для имен использования сфер, которые начинают с "s." и действуют с mesh name
Для имен использования цилиндров, которые начинают с "c." и действуют mesh name
Для имен использования множеств, которые начинают с "m." и действуют mesh name
Примеры наименования:
Если мы создали бы сферу для mesh "IRON_WALL" то имя будет: "s.IRON_WALL"
Это может быть "s.IRON_WALL.001" и и т.п.. Но должно начать с "s.IRON_WALL"
В конце когда Вы запускаете экспорт тела, экспортер распознает его.
3- Экспортируя тела используйте: exporter.add_body("MESH_NAME")
Это найдет объекты начинающиеся с "s.MESH_NAME", "c.MESH_NAME", "m.MESH_NAME".
Нежели в конце сценария: exporter.write_bodies()
экспортирует информацию тела в файл TRF.
4- Пример скрипта:
from Exporter import *
exporter = Exporter()
exporter.add_body("pole")
exporter.add_body("chair")
exporter.open("C:/bodies.trf")
print ("exporting " + exporter.file_name)
exporter.write_meshes()
exporter.write_bodies()
exporter.file.write("\nend\n")
exporter.close()
print "finished."
--------------------------------------------------------------------
ИМПОРТ ( О Координатных Пробелах)
Если Вы смотрите в проект скелетов, skel_human и skel_horse на y+ ось.
Когда Вы импортируете meshes, если они не смотрят на y+ ось, не поворачивайте их в объектном режиме(object mode).
Если Вы изменяете их величины в объектном режиме, их координатное пространство тоже изменяется.
Координатное пространство Mesh должно быть одинаково с координатным пространством blender.
Так предотвращается изменение в объектном режиме(object mode) сдвиге/шкале/захвате их в режиме редактирования(edit mode). Так их координатное пространство может остаться одинаково со скелетами(skeletons) и blender.