Набор аниматора №1
На этой страничке я хочу выложить набор файлов, которые могут пригодится аниматорам, знающим Blender 2.62+.
С его помощью можно с лёгкостью создавать разнообразные позы или простые движения персонажей для игры Skyrim.
Ссылка на мод: "КЛИК"
В состав набора входит скрипт-экспортёр для Blender 2.62+ (сохранён в файле примера), консольная программка "KFmaker.exe" создающая KF файлы, файл "skeleton_female.txt" описания скелета модели для которой создаётся анимация и файл "Examlpe.blend" с рабочим примером. В примере уже импортирован стандартный игровой скелет и тело, установлены параметры сцены для создания позы. В архиве так же имеется небольшая инструкция, описывающая основные шаги.
Всё что нужно чтобы начать работу - это распаковать содержимое архива в любимую папку и запустить файл примера "Examlpe.blend".
В общем процесс работы можно разделить на 4 части: создание анимации в Блендере, экспорт её в текстовый файл, преобразование текстового файла в KF формат и наконец преобразование KF файла в HKX.
Вот общая блок-схема работы с утилитами:
Это сделано так, чтобы упростить процесс написания и отладки скрипта в Blender. Все преобразования в НИФ файл и обратно я написал на Microsoft Visual C++ Express 2010. Вообще все мои утилиты написаны именно для импорта/экспорта данных в НИФ формат, ибо так экспорт происходит намного быстрее, скрипт не вырастает до бешенных размеров, да и искать ошибки в Си намного проще чем в Блендере.
Я старался разделить работу на наиболее оптимальные части. Всякие трёхмерные преобразования, то что быстрее и проще сделать в скриптах Блендера я делал в нём. Операции ввода/вывода, создание и заполнение НИФ блоков, а так же преобразования типов данных были возложены на Си.
Импортированный скелет имеет следующий вид:
Мне показалось что длины косточек (она у меня равна 1 блендеровский юнит) должно быть достаточно, для удобного управления (если их больше сделать, то косточки пальцев начнут сливаться).
После создания позы/анимации необходимо экспортировать данные в текстовый файл запустив скрипт нажатием на кнопку, показанную на картинке:
Теперь остаётся только выполнить команду "Сonvert.bat" чтобы создать HKX файл, пригодный для добавления в игру.
(для окончательного преобразования в HKX фромат используется утилита "hkxcmd.exe" от пользователя "TheFigment" которую, при желании, можно найти на Нексусе по ссылке "КЛИК" и которая включена в этот набор)
Пару слов о скрипте:
Работать скрипт будет только в версии Blender 2.62 и выше ибо в более ранних версиях Блендера не реализованы некоторые команды используемые в скрипте. Cкрипт не отличается особой функциональностью и интерфейсом, но зато он очень маленький и достаточно простой. Всё что он делает - преобразует анимационные координаты косточек из системы координат Блендера в систему координат НИФа, и сохраняет их в текстовом виде, для последующего преобразования в KF файл с помощью специально созданной для этого утилитки "KFmaker.exe".
В скрипте есть функция "ConvertAxes()" в которой по сути используется ручная подгонка осей коордитат косточек. Причём преобразуются только основные косточки скелета, всякие дополнительные (типа "...Twist...", "Weapon...", "MagicEffectNodes") остаются как есть и анимироваться будут скорее всего не правильно (но будет ли кто то вообще их анимировать, большой вопрос...). Решение конечно не очень, сам такие жутко не люблю, но зато оно работает. А для создания универсального метода преобразования у меня уже фантазии не хватает. Так что буду рад любому совету по улучшению работы этого кода ...
Выложил я именно этот набор, потому что мне показалось что он наиболее прост в освоении. Тут сразу виден результат, который необходимо получить, и используется минимальное количество действий для его достижения (особенно в сравнении с другими программками, которые я наделал :) )
Если будет интересно, я позже выложу второй набор утилит, с помощью которых создавались "Личинка" и "Танцовщица" (а также создавалась анимационная "болванка" для этого набора).
Антон, приветствую. Увидел ваш ответ на форуме anvilbay.ru в теме «[Skyrim] Проблема при экспорте моделей». Не могли бы вы подробнее описать ваш способ экспорта моделей из блендера в skyrim. Это было бы очень полезно многим, в том числе и мне.. давно ищу способ.:) Заранее благодарен за ответ.
ОтветитьУдалитьP.S. На всякий случай ссылка на тему:
ОтветитьУдалитьhttp://forum.anvilbay.ru/index.php?topic=24802.0
Добрый день, Максим.
ОтветитьУдалитьМой способ достаточно прост: я вставляю в НИФ файл модель из OBJ формата с помощью Нифскопа (этот шаг в принципе не обязателен). При этом практически всегда портятся UV и нормали (такой уж этот Нифскоповский импортёр).
Но меня это мало волнует т.к. я написал спец программку которая фактически и делает импорт всех данных в правильном виде + ещё и VertexColor может туда добавить. Просто для работы программки нужно чтобы имя NiShape блока и имя модели в OBJ файле совпадали (это чтобы руками индексы блоков не указывать).
Но самой утилитой я пока ещё не делился. Не был уверен что оно кому то надо, да и инструкции к ней писать желания не было.
Методом тыка, и дополнительной шлифовкой в нифскопе мне удалось добавить статику в игру, но без коллизии. С этим у меня сейчас и проблема. Если не против, мог бы я связаться с вами в скайпе? На анвилбэе он вроде записан. Буду признателен если окажете помощь. :)
ОтветитьУдалитьМожно конечно, для этого я его и завёл :)
ОтветитьУдалитьНо только я смогу ответить где то в районе 20:00 (по моему времени :) )
Правда по коллизиям я много не помогу, давно этим не занимался. Делал в основном квадратную, ну и пару раз - как в ссылке в том посте написано.
Помог импорт OBJ. Дело двинулось с мертвой точки. :) Скоро, надеюсь, и за анимацию возьмусь!
ОтветитьУдалить