• Уважаемые гости и новички, приветствуем Вас на нашем форуме
    Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!
  • Друзья, доброго времени суток! Спешите принять участие в конкурсе "Таинственные миры" 2024!
    Ждем именно вас!

    Ссылка на конкурсную тему - тык

Анимация гибкой оболочки на примере женской груди

alex_draven


Модостроитель
Регистрация
13 Сен 2007
Сообщения
2.184
Благодарности
2.879
Баллы
420
  • Первое сообщение
  • #1
Настало время описать детально, как создать в редакторе гибкую оболочку, чтобы ее мог скушать движок и корректно воспроизвести в игре.
Если кто-то серьезно ковыряется с 3DsMax, то данный урок будет полезен еще и потому, что вы едва ли найдете в сети более простой и в то же время столь гибкий и эффективный способ.

На первом этапе берем заготовку любого скелета:
_1.png
Далее нам нужно добавить две кости в качестве extra в область груди. Лучше всего воспользоваться услугами Xtras:
_2.png
Этой функции нет в старых версиях 3dsmax. Я ковырял на 2011.
Желательно сделать opposite Xtra, чтобы получить левую и правую кости (зеленая и синяя). Так удобнее и правильнее с точки зрения топологии скелета. Также важно, чтобы эти кости были прилинкованы к кости спины. В моем случае это Bip01 Spine3.

На скриншоте видно, что кости имеют свою геометрию. Если в свойствах кости указать Display as BOX, то они станут выглядеть также, как и все прочие кости в моей сцене. Потом так и сделаем. А пока запомним, что кость имеет свою геометрию.

Когда я сидел и думал, как анимировать такую сложную систему, как "женская грудь", то начал с проработки упрощенной модели. Представим себе обычную гибкую пружину с закрепленным основанием. Максимальное отклонение от точки покоя будет иметь точка, удаленная от неподвижного основания на расстояние, равное базовой длине пружины:
_3.png
Посмотрим на нашу кость в редакторе. Если неподвижные точки это те, которые "ближе к телу", то максимально отклоняемая будет эта:
_4.png
Движок игры работает таким образом, что позволяет анимировать всё, что опирается на кости. Если заставить деформироваться геометрию кости, как на рисунке, то, к сожалению, это будет лишь деформацией ее внешнего вида. Сами опорные точки кости, по которым она привязывается к другим костям, деформироваться не будет. А значит, вырисовывается нехитрая задача по созданию дополнительной кости, которую мы должны привязать к колебательной системе нашей базовой кости. А именно к точке, отмеченной красным на рисунке выше.

Для этого воспользуемся хелпером типа point. Лучше сразу его повернуть на такой же угол в мировой системе координат, что и наши симметричные кости груди. Затем применяем к нему attachment constraint с параметрами, как на рисунке:
_5.png
Это означает, что наш точечный хелпер прилипнет навечно к нужной крайней точке колебательной системы и будет сориентирован строго по ней.
Время создать нашу рабочую кость. Для движка пофиг, как она будет выглядеть, главное, чтобы назвалась Bip01 xxx. Я беру обычный бокс:
_6.png
К этому боксу применяем position constraint и выбираем в качестве цели наш хелпер point:
_7.png
Если очень хочется, чтобы рабочая кость повторяла вращение, можно добавить orientation constraint, но для движка это не важно.
Вращая корневую кость (зеленую или синюю), можно видеть, как рабочая кость следует за ней. Т.е. она как бы прибита на гвоздь и болтается. Несложно понять, что если геометрия нашей корневой кости будет деформироваться, то точка привязки начнет плавать туда-сюда, а, значит, начнет плавать рабочая кость. Система работает!
_8.png

Настало время завершить модель. То, что у меня сразу не получилось. Дело в том, что при использовании модификатора physique для привязки шкурки к скелету очень важно, чтобы любая кость заканчивалась хелпером. Если вы возьмете рабочий Biped скелет, то увидите, что все цепочки костей оканчиваются хелперами в виде боксов, в названии которых есть по умолчанию суффикс "Nub". У моделей от разработчиков игры они переименованы в Dummy##. И при экспорте в ASC они тупо отсеиваются.
Это означает одну простую вещь: к нашей рабочей кости, которую я делал обычным боксом, нужно приаттачить хелпер типа Dummy. Примерно вот так:
_9.png
Система готова. Вот как оно выглядит после доводки и привязки:
_10.png
Иерархия костей у меня вот такая:
_11.png
Белым выделены рабочие кости. А корневые без приставки Bip01 - они нам в игре не нужны.

Ну а теперь завершающий этап. Именно то, что оживит подвижную систему. Это, товарищи, замечательный модификатор Flex. Именно что замечательный, т.к. очень простой и весьма стабильный. В отличие от большей части того глючного говна, что несет в себе могучий 3д-пакет от Autodesc.
Применяем его к нашим корневым костям, которые должны деформироваться. Вот так это выглядит для правой рабочей кости груди:
_12.png
Для левой аналогично.
Тут важны параметры, обведенные красным. Цифры определяют параметры колебательной системы, а кнопка reset возвращает кости в стартовое положение при работе с анимациями, т.к. они будут могут изменять положение, пока вы ковыряете модель.
0, 7 1,0 5,0 - это подходит для статичных положений, когда персонаж совершает фоновые движения.
0,4 0,75 5,0 - подходит для динамики, когда персонаж прыгает, бегает и пр.

В любом случае, подбирается опытным путем под вашу модель. При проигрывании анимации дайте ей прокрутиться пару циклов, чтобы колебательная систем подуспокоилась и зациклилась. Можно вручную слайдер временной шкалы повозить туда-сюда. Flex мне нравится потому, что он работает в режиме реального времени и сам стабилизируется.
Важную роль также играет то, как вы пришьете шкурку к рабочим костям. Помните, что корневые кости в привязке участвовать не должны. Для этого выделите их и снимите все галочки в этом поле:
_13.png
На рисунке видна привязка оболочки к рабочим костям. Корневые отключены. А хелперы игнорируются по умолчанию.

Почему нельзя было сразу привязаться к корневой кости и не городить огород? Дело в том, что flex меняет только ее условную геометрию, но параметры самой кости в точках привязки не меняются. И для модификатора physique без разницы, что там происходит с геометрией кости, если в локальной системе координат она всегда неподвижна.

На этом всё.
 
Последнее редактирование:

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.371
Благодарности
7.802
Баллы
995
Тут дело в том что для Готы еще фактически не было ни одного нового, качественного, полностью анимированного, зверя, а ты предлагаешь парится с анимацией нарывов у них :)
Хм.. Дрейк в Саге, Пауки в В2, Гоблинцы наездники, с рогатками и прочее в Глобале, этот список можно продолжать.. *pointing*

Другое дело что анимы тут идут немного отдельно от скриптов и двига, где последние = попа боль, ибо массив гильдий в игре уныло-говенный и по сути весь забит, как и все производные от этого. Т.е. большая проблема здесь не сделать их, а добавить нормально в игру, именно как новый тип монстра, а не ту "срань" на основе ущербных гильдий, как пример, Паук на основе гильдии "краулера", Дрейк - "снеппера" и т.д. и т.п.
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
ну вот о том и речь) не, я попробую конечно что-нибудь несложное в хамелях, но не обещаю, ибо это наилютейший гемор

Если заставить деформироваться геометрию кости, как на рисунке, то, к сожалению, это будет лишь деформацией ее внешнего вида
сами же готокости вроде как умеют в деформацию и себя и меша

Хм.. Дрейк в Саге, Пауки в В2, Гоблинцы наездники с рогатками и прочее в Глобале, этот список можно продолжать.. *pointing*
ну не, новое - это например что-нибудь вивернообразное
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.371
Благодарности
7.802
Баллы
995
ну не, новое - это например что-нибудь вивернообразное
Ну для этого сначала надо дракона научить летать, в любом случае без лохматинга двига тут ни хрена не сделать, поэтому смысла все это делание имет ровно 0..

И главное чем это новое отличается от того же нового дрейка например ?! Как про мне абсолютно ни чем..
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
без лохматинга двига
вот тут как раз проблем не вижу. в игре еще не было ни одной летающей твари. не было ничего схожего с земляными червями. осьминогов-акул и тд и тп. все остальное это тоже самое говно что и в ванильке, только в другой обертке.
 

alex_draven


Модостроитель
Регистрация
13 Сен 2007
Сообщения
2.184
Благодарности
2.879
Баллы
420
Оно и так многим было понятно что можно просто анимировать дополнительные кости
Моя система полностью автоматизирована и избавляет моделлера от лишних телодвижений вообще. Всю работы выполняет Flex. Ручные способы и близко не валялись по качеству выхода.

сами же готокости вроде как умеют в деформацию и себя и меша
Кости biped нельзя растягивать в реальном времени, только при стартовой конфигурации скелета. А оболочка подчинена только костям и при экспорте анимации исключается из списка экспортируемых объектов.
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.371
Благодарности
7.802
Баллы
995
осьминогов-акул
Ты чего американских уныло-говенных сериалов насмотрелся чтоль? какой еще в жопу акул-осьминог ?! :rolleyes:

Что до остального, то когда оно будет в двиге, можно будет подумать и об остальном. Да и желающих думаю будет не мало все это опробовать, как у нас так и за бугром.. *peace*
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
Ты чего американских уныло-говенных сериалов насмотрелся чтоль ? какой еще в жопу акул-осьминог ?! :rolleyes:

Что до остального, то когда оно будет в двиге, можно будет подумать и об остальном. Да и желающих думаю будет не мало все это опробовать, как у нас так и за бугром.. *peace*
upload_2017-11-2_19-5-5.png
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.371
Благодарности
7.802
Баллы
995
Я знаю что это, я же говорю что видел постеры этого трешового сериала амерского, от того и спрашивал, его пересморел чтоль ?! :D

На мой взгляд куда оригинальней бы сморелся оживленный змий из вод Ярика, а не эта амерская срань.. *right*
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
Я знаю что это, я же говорю что видел постеры этого трешового сериала амерского, от того и спрашивал, его пересморел чтоль ?! :D

На мой взгляд куда оригинальней бы сморелся оживленный змий из вод Ярика, а не эта амерская срань.. *right*
я на бум ляпнул. ни о каком сериале не слышал и телек не смотрю в принципе

хотя концепт неплох ;) да и в целом лучшеб не монстров клепали, а мирную живность и населяли ею локации.
 
Последнее редактирование:

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.371
Благодарности
7.802
Баллы
995
я на бум ляпнул. ни о каком сериале не слышал и телек не смотрю в принципе
Я тоже уже как лет 20 зомби ящик не сморю и снес его давно на помойку, ибо кроме звиздежа на нашем ТВ ничего нет.
А вот фильмы смотреть люблю, нормальные, научную фантастику и прочее фентези.. На видео-сайтах типа Гид-онлайн и прочих, можно найти много всяких фильмов, в том числе и озвученный трешак, на манер "акульих торнадо" и прочей ереси.. :)
 

Bezio

Участник форума
Регистрация
27 Июн 2012
Сообщения
211
Благодарности
206
Баллы
200
...да и в целом лучшеб не монстров клепали, а мирную живность и населяли ею локации.

Ну вот сие всегда манило, особенно после живого Ведьмака 1-ого (Остальные видел, но не играл - не берусь судить о атмосфере живности), в нём много прикольного зверья: кролики, бабочки, лягушки, кошки, всякие птицы (Последних, вроде, отчасти ты уже и сам в АСТе делал), все они в нужных местах очень украшают картину. И главное - не убьёшь ты эту атмосферу, она сама по себе живёт и иногда на тебя реагирует, в отличии от той же Г3, где безобидные зверушки обычно вырезаются за мизер-опыт и кусок мяса, просто потому, что они, всё ровно есть... Такова душа почти каждого игрока. Однако совсем и не сложно, если делать в Г2, реализовать эту живность, просто приписывать НоФокус и всё, ну и приписать реакцию на приближение ГГ иль других неписей (Впрочем, если ГГ не может убивать кроликов, это не значит, что ради пропитания на них не может охотиться тот же волк, просто он это будет делать в весьма умеренных количествах, в отличии от ГГ, и создавать своей охотой атмосферу).

С птицами, вроде когда-то я тебе про это говорил, я лично думал делать некий MOBSI-объект (невидимый, однако именно на нём определённый непись будет исполнять ряд анимаций) и располагать его на ветке дерева (К примеру). Да, не хорошо делать всю жизнедеятельность зверя на одних мобси, всёж он должен, если что, тоже уметь и сам передвигаться, но вот полёт... Я, как помню, при самостоятельном управлении птицей, обдумывал вариант как и под водой, при взлёте дать волю двигаться по всем 3-ём осям, но, вроде, это и не реализуешь и особого смысла это не имеет. А у тебя птицы двигались в пространстве по заданным траекториям? Но там они представляли собой не существо, а целый ряд моделей, впрочем, в Ведьмаке 1 стайка голубей, что разлетаются при приближении ГГ, тоже являют собой единое целое.

Ладно, отошёл я от темы.. В твоём ролике ты подавал какую-то силу (ветер?) на тряпку и наблюдал её движение? А если, к примеру, ослабить эту силу и/или повернуть в другую сторону - тряпка будет колыхаться в направлении "ветра" и менее интенсивно? И если так, то когда "ветер" будет дуть максимально сбоку - коллизии ж нет - тряпка начнёт сама в себе застревать? Или я неправильно понял твой принцип..?
 
Последнее редактирование:

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625

DrZoidberg

★★★★★★★★★
Супермодератор
Регистрация
27 Янв 2010
Сообщения
3.098
Благодарности
3.597
Баллы
1.175
Так, я не понял: урок есть, грудь вроде как нарисована - а демонстрация где?! Народ требует слайды кино!*popcorn*
 

Myxomop

Почетный форумчанин
Регистрация
28 Май 2005
Сообщения
3.236
Благодарности
2.575
Баллы
455

DrZoidberg

★★★★★★★★★
Супермодератор
Регистрация
27 Янв 2010
Сообщения
3.098
Благодарности
3.597
Баллы
1.175
От оно как!
*thumbs up*
 

kraw


Модостроитель
Регистрация
11 Окт 2005
Сообщения
2.095
Благодарности
871
Баллы
295
Смотрите шире и вы увидите не только сиьски, но и какого-нибудь монстра с пульсирующими гнойными нарывами.

Да Белиар с этими гнойными нарывами! Но вот если бы ты добавил к женским (хотя бы к ключевым или, хотя бы, к одной) моделям в POKh колышущуюся грудь и перекатывающиеся при ходьбе ягодицы... А то анимации ты сделал отменные, тут бы добавить совершенства... *thumbs up*
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.371
Благодарности
7.802
Баллы
995
Колышущиеся ягодицы это да.. *right*:D
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
нужно построить что-то вроде flex модификатора на движке.
ну в целом не очень сложно, но на текущий момент методов работы с нодами маловато.
если идея перспективна, обязательно нужно будет поиграться с модификаторами скелета, ибо пока это куча проекций из мировых координат в локальные от родительских костей.
 
Сверху Снизу