Link:INB Home|INB English| INB русский язык|INB العربية|INB Türkiye|INB فارسی|INB Español|INB Français|INB Português|INB Deutsch|INB 國語|INB 中文|INB 日本语|INB 한국어|INB ภาษาไทย|INB tiếng Việt||Уроки Maya Сложный скиннинг
INB русский язык Форум
Добро пожаловать! inbforum.COM Интернет без границ Форум Здесь вы можете обсудить с друзьями по всему миру прений, приходите и присоединяйтесь к нам! Постоянный имя: Ruinbforum.forumotion.com
INB русский язык Форум

Добро пожаловать! inbforum.COM Интернет без границ Форум Здесь вы можете обсудить с друзьями по всему миру прений, приходите и присоединяйтесь к нам! Постоянный имя: Ruinbforum.forumotion.com


Вы не подключены. Войдите или зарегистрируйтесь

《《《《《《《上一页INBforum   Перейти вниз

上一页INBforum》》》》》》》Предыдущая тема Следующая тема Перейти вниз  Сообщение [Страница 1 из 1]

1Уроки Maya Сложный скиннинг  Empty Уроки Maya Сложный скиннинг в Пт Окт 01, 2010 10:19 pm

Admin

Admin
Admin
Для иллюстрации принципа возьмём простую модель руки:
Skin_01

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Далее конвертируем наш поли-объект (Mesh) в сабдивы, не забыв оставить исходник:

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Прибавим сабдиву разрешения до трёх и для удобства положим оба объекта в соответствующие слои:

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Создаём три кости и цепляем IK:

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Далее выделяем Mesh и корневую кость, потом smooth bind по умолчанию:

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Skin_02
Для начала создадим дубликат нашего поли-объекта:

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Потом снимем блокировку трансформаций - для этого выделим все «серые» атрибуты

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

и, нажав правую клавишу на любом из них, выбираем unlock selected.
Продублируем новый объект ещё раз, отодвинем оба дубля в сторонку и спрячем их в отдельный слой. Также я для удобства спрятал в свой слой кости и IK.

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Теперь нужно создать Blend Shape деформацию. Для этого выделим первый дубль, потом добавим к выделению второй, и только после них – оригинал полигональной руки. Дальше Deform => Create Blend Shape по умолчанию.

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Теперь, выделив нашу руку, в редакторе атрибутов мы увидим ноду blendShape1 и два её главных параметра: веса обоих наших дублей.

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

С помощью этих параметров мы и будем контролировать форму руки при сгибе в локтевом суставе.
Теперь свяжем Mesh с polyToSubd1 посредством Wrap: выделяем сначала polyToSubd1, а потом Mesh. Далее - Deform => Create Wrap:

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Skin_03
Теперь, если мы скроем Mesh и потянем за ikHandle, то увидим, что и наш сглаженный сабдивижн-объект будет деформироваться.

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Рука гнётся весьма нереалистично – здесь надо было бы подправить веса вершин, однако данный метод позволяет решить этот вопрос другим способом.
У нас осталась ещё одна нерешённая проблема: нужно переставить местами inputs у полигональной руки, так как на самом деле Blend Shape нужно прицеплять до скининга. Увидеть нашу проблему просто: не отменяя ранее сделанного перемещения ikHandle, надо скрыть polyToSubd1, а у Mesh перейти на закладку blendShape1 и подвигать ползунок Dubl_1. Рука будет возвращаться в начальное место. Нам же нужно добиться, чтобы она только деформировалась. Не забудем отменить перемещение ikHandle.
А исправляем так: на поли-объекте щёлкаем правой клавишей, выбираем Inputs – All Inputs. Потом подводим курсор к Blend Shape и средней клавишей (колесом) перетаскиваем её на Skin Cluster. Эти две ноды должны поменяться местами и Skin Cluster будет сверху:

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Теперь, пожалуй, всё готово – перейдём к сути метода!
Открываем окно Set Driven Key:

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Выделяем кость предплечья (joint2) и нажимаем Load Driver. В верхней части появится joint2, справа – набор её атрибутов, там мы выделяем rotateY. Далее выделяем нашу полигональную руку, открываем редактор атрибутов, переходим на закладку blendShape1 и нажимаем кнопку Select в нижней части редактора. И теперь нажимаем Load Driven.

Справа от появившегося там blendShape1 выделяем Dubl_1 и Dubl_2.
Проверяем, чтобы значения весов дублей были равны 0. Значение вращения кости тоже должно быть равно 0, если, конечно, вы не сдвинули ikHandle.

Итак, теперь мы нажмём Key, и у нас создастся ключ, связывающий значения Driver и Driven.

Skin_04
Берём ikHandle (или просто joint2) и сгибаем руку примерно на 90 градусов. В закладке blendShape1 значение Dubl_1 меняем на единицу. Снова нажимаем Key, проверив, чтобы всё было выделено как раньше:

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Скрываем Mesh и кости и показываем сабдив и дубликаты. Выделяем Dubl_1 и переходим к редактированию его вершин. Сдвигаем вершины (контролируя результат на сабдиве) с внутренней и внешней сторон локтевого сустава:

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Здесь же можно создать и небольшую выпуклость для напряжённого бицепса. Когда результат нас удовлетворяет, можно сохраниться и посмотреть как работает наша система, двигая ikHandle или вращая joint2.
Не очень красиво получается при сгибе градусов на 60 – рука становится слишком толстая:

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Это тоже достаточно просто исправить. Выделяем Mesh, и загружаем Graph Editor:

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Там выбираем верхнюю joint2.Rotate Y (вверху появится blendShape1.Dubl_1) и нажимаем f:

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

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

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Теперь уже рука выглядит лучше.

Skin_05
Осталось согнуть руку «до упора», в закладке blendShape1 поменять значение Dubl_1 на ноль, а Dubl_2 - на единицу и поставить Key. Редактируем Dubl_2 и наблюдаем результат на сабдиве. Для достижения особо реалистичного результата придётся помучаться, но что-то приемлемое можно сделать достаточно быстро:

[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]

Skin_06
Вот собственно и всё! С помощью данной технологии можно добиться весьма точного контроля над вашими моделями и автоматизировать движения мускулов.

Конечно, техника может показаться нелаконичной и запутанной - это из-за того, что урок я построил так, чтобы показать как можно больше сопутствующих нюансов. На самом деле всё, даже и не очень гениальное, просто!
]

http://ru.inbforum.com

上一页INBforum   Перейти вниз

上一页INBforumПредыдущая тема Следующая тема Вернуться к началу  Сообщение [Страница 1 из 1]

Права доступа к этому форуму:
Вы не можете отвечать на сообщения

Copyright ©2009-2010 LTD Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.

IT:SINGLESERVGoogle谷歌翻译TranslateFORUMSOFTLAYERGoogle谷歌广告联盟AdSenseAsia

 

Создать форум | © PunBB | Бесплатный форум поддержки | Контакты | Сообщить о нарушении | Последние обсуждения