The Sims Creative Club

This is a sample guest message. Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

Как отвязать игровую анимацию от окружения

Статус
Закрыто для дальнейших ответов.

filfil3

Проверенный
Сообщения
206
Достижения
98
Награды
297
Как «отвязать» игровую анимацию от окружения и получить возможность её редактировать.

Для урока использовались программы:
Blender
S3PE

Pose Player
Файл с игровыми анимациями FullBuild0

Важно: в этом совете я постараюсь объяснить только принцип работы с анимацией. Вопросов, связанных с работой в программах Blender или Milkshape, импортированием-экспортированием анимаций и пользованием S3PE и MTS Cmomoney PosePlayer мы затрагивать не будем, чтобы избежать повторений. Поэтому, если вы собираетесь впервые заняться собственной анимацией, вам прежде всего необходимо изучить темы F.A.Q. по созданию поз , Коробка поз "Pose Player" , скачать и установить весь указанный в этих уроках софт и немного научиться управляться с Blender или Milkshape (интерфейс и простые операции). Это всего лишь метод, думаю, он может быть реализован как в Blender, так и в Milkshape. Но поясню я этот метод в Blender, ибо с Milkshape знаком совсем мало.

---------------------------------------------------------------------------------------------------------------------

Безусловно, хочется порой сделать красивую и подходящую анимацию в своё видео, но сделать её с нуля, не будучи профессиональным или опытным аниматором, весьма и весьма сложно. Но очень хочется. Поэтому использовать анимации EA, изменённые под наши желания – идеальный выход. Но, полагаю, что многие артмейкеры и мувимейкеры сталкивались с проблемами редактирования «заводских» игровых анимаций.

Проблема:
Давайте попробуем вытащить какую-нибудь «заводскую» анимацию, немного её поменять и посмотреть, что у нас получится.
Файл, в котором содержатся игровые анимации, по умолчанию находится по такому пути:
С:\Program Files\The Sims 3\GameData\Shared\Packages\FullBuild0
Но адрес может немного меняться в зависимости от диска и папки, куда вы установили игру.
Отсортируем в S3PE клипы, например, по слову «sitting» и возьмём первый попавшийся:

1.1475867411.jpg

Переименуем его, например в «a_my_test_animation_x» и экспортируем в свой список поз (Pose Player) пока без всякой редакции в Blender или Milkshape. А затем посмотрим, как это выглядит в игре. В этом нам поможет мой любимый персонаж Хобо
smile.gif
:



Всё выглядит вполне прилично и так, как в обычном игровом процессе. А теперь попробуем сделать в Blender простую операцию – подвинуть персонажа, скажем, чуть вперёд. А именно изменим значение «X Location» кости «b__ROOT__» на 0.5:





А теперь импортируем полученный вариант в игру и посмотрим, что получилось:


«О, боже!!! Гадёныши!!!» - кричит бедный Хобо – «Шо ж вы со мной делаете?!»
Ну и как-то жаль его становится…

Причина:
Причина, по которой происходит такое вот непотребство – вся ветка костей под «b__ROOT_export__» включительно. Точнее не сами кости, а их «управление».


4.1475868097.jpg

Они отвечают за положение сима в пространстве, взаимодействие сима с объектами и всё остальное подобного назначения. В принципе, эта ветка костей – очень удобная и полезная штука, но… только в ПО разработчиков. Мы же, не видя и только догадываясь о том, за что эти косточки отвечают и как работают, вынуждены либо редактировать их вслепую (а это занятие крайне долгое и нудное и, на мой взгляд, почти безрезультатное), либо вообще от них избавиться (как бы «отключить»). Я предлагаю попробовать второй вариант.
 

filfil3

Проверенный
Сообщения
206
Достижения
98
Награды
297
Решение:
Вернёмся к анимации, которую мы выбирали.
1.1475867411.jpg

Экспортируя из S3PE, её можно не переименовывать вообще, а сохранить под тем же названием.
Импортируем эту анимацию в Blender, найдём в Outliner трэк (channel) кости «b__ROOT_bind__» (та самая ветка, которая нам нужна) и сдвинем персонажа в любую сторону так, чтобы в окне «3D View» нам были видны те самые «ненужные» кости. Ну, например, сдвинем его по оси «X». Предварительно надо передвинуть курсор в «DopeSheet» на другой кадр, где нет кейфреймов:




Далее фильтруем трэки по слову «ROOT» и блокируем кости «b__ROOT_bind__» и «b__ROOT__» от изменений (нажимаем на замочек). Это необходимо сделать, чтобы не удалить эти косточки – они нам нужны.

7.1475868629.jpg

Затем:
1. Сбрасываем фильтр, чтобы в «DopeSheet» нам были видны все трэки.
2. Снимаем выделения трэков (наводим курсор на трэки и 2 или 3 раза нажимаем клавишу «A», чтобы все трэки сначала стали белыми, а потом чёрными).
3. Переводим курсор в окно «3D View», нажимаем клавишу «B» (в Blender по умолчанию) и мышкой выделяем косточки так, как показано на скриншоте ниже:

8.1475868740.jpg

4. Необходимо обязательно проверить, нет ли у нашего персонажа выделенных костей, привязанных к мешу. Если есть, то снова нажимаем клавишу «B» и, удерживая «ALT», снимаем выделение.
5. В «DopeSheet» мы уже видим, что трэки выделенных костей окрасились в белый цвет. Переводим курсор на трэки и нажимаем «Delete», тем самым их удаляя.
6. Далее вновь возвращаемся к трэкам «b__ROOT_bind__» и «b__ROOT__», снимаем с них блокировку (замочек должен быть открыт) и удаляем созданный нами ранее кейфрейм (выделяем его правой кнопкой мыши и нажимаем «Delete»):

9.1475868930.jpg

7. Всё, первая часть закончена. Теперь сохраняем проект Blender под любым названием. Например, «My test project». Файл анимации, который мы экспортировали из S3PE, можно удалить – он больше не нужен.

-----------------------------------------------------------------------------------------------------------​

Теперь нам надо создать наш главный проект, в котором мы будем издеваться над подготовленной нами «заводской» анимацией – тот самый «701» или «702». Рекомендую всё же именно «702»:

10.1475869019.jpg

Самое удобное то, что в нашем случае его можно называть как угодно, без всяких префиксов «a_». Главное, чтобы название было латиницей и не менее 8 символов. Ну, назовём его, как показано на скриншоте выше – «Hobo_puts_on_lugs».
Традиционным способом импортируем его в Blender и присоединим к нему наш сделанный ранее проект «My test project.blend». В меню выбираем «File» -> «Append»:

11.1475869076.jpg

Находим проект «My test project.blend», жмём на него, и он открывается в виде нескольких папок:

12.1475869110.jpg

Нам нужна папка «Object», а в ней файл «Body». Выбираем его, жмём «Link/Append from Library» и теперь в окнах «Outliner» и «3D View» видим такую картинку:

13.1475869166.jpg

Теперь всё, что нам надо сделать – это скопировать всё из появившегося «Body.001» в «Body». Выделяем мышью «Body.001», в окне «DopeSheet» клавишей «A» выделяем все трэки(channels) и все кейфреймы (трэки должны быть белыми, кейфреймы жёлтыми), далее «Key» -> «Copy Keyframes»:

14.1475869234.jpg

Затем выделяем «Body», точно так же выделяем все трэки (кейфреймы выделять необязательно), выставляем курсор на нулевой кадр и вставляем скопированное (либо нажимаем «CTRL+V», либо «Key» -> «Paste Keyframes»). После того, как кейфреймы появятся, «Body.001» можно (и нужно) удалить.

Всё! Теперь всё готово для того, чтобы результативно сдвинуть нашего персонажа, как мы и хотели в самом начале:


Если мы запустим в Blender нашу анимацию, то заметим, что двигаются только те косточки, которые привязаны к мешу. Остальные неподвижны. Это хорошо.

Ну а теперь наконец-то сдвинем нашего персонажа по оси «X» на 0.5, но только проделаем это с костью «b__ROOT_bind__»:


Обратите внимание на то, что значение «X» первого кейфрейма уже не равно «0», поэтому к этому значению надо прибавить 0.5 и ввести результат.

Сохраняем проект, экспортируем файл анимации в список «Pose Player» и с радостным нетерпением загружаем игру, чтобы посмотреть, что у нас получилось:



О, чудо! Наш помощник Хобо сдвинулся ровно настолько, насколько мы ему и сказали!


P.S.
Вот собственно, и всё. Теперь нам нет нужды мучительно редактировать «вслепую» ветку костей «b__ROOT_export__» и отображения анимации в Blender и самой игре будут абсолютно идентичны, за исключением кости «b__ROOT__» (там меняются оси координат). Пара дней тренировки – и вся процедура занимает 3-5 минут. Таким методом можно «отвязать» абсолютно любую игровую анимацию и изменять её как вашей душе угодно. Этим же способом можно последовательно комбинировать разные анимации или составлять из нескольких одну.
Да, и последнее в этой части – всего вышеописанного достаточно для анимаций, которые не перемещают и не поворачивают симов относительно местности (т.е. к «статичным»).
Желаю удачи и много анимашек, хороших и разных.
 
Статус
Закрыто для дальнейших ответов.
Верх