Render.ru

Кто как делает риг - Все делимся

xeash

Активный участник
Рейтинг
12
#41
To sky_myth:
Насчет супинации-пронации, при есть 2 в предплечье : лучевая и локтевая...когда кисть руки крутиться то лучевая перекрещивается с локтевой...можно попробовать добавить твист джоинт и прорисовать 2 кости для лучевой и локтевой кости..присвоить им ик,припарентить его к твист джоинту и крутить через поворт твист джоинта... Но я бы порекомендовал добавить кучу твист джоинтов (зависит от модели) и крутить их через утилити ноду при повороте кисти..получается более лучшое сохранение объема при скручивании, имхо=)
To Vzor:
ты хотел сказать что то важное но я честно говоря не понял из твоего поста...скажи прямо=)
Насчет где смотреть...книжки по анатомии я бы рекомендовал(хотя живые люди тоже неплохи)...
насчет бровей...мож попробовать замоделить череп и пустить джоинты -управляющие лицом. перемещается через гео-констраинт к кости(полигональной) черепа...ну если стандартными средствами майки то можно еще скулпть деформер исползовать для скольжения кожи костям)...пока воздержусь от комментирования остального...лучше дождусь твоего поста=)
 

DemX86

Активный участник
Рейтинг
18
#42
Вопрос в тему.
Руководствуясь уроком "Создание и настройка "скелетов" персонажей в MaYa" за авторством Alexey Borzykh [http://www.render.ru/books/show_book.php?book_id=4] (кстати, нашел этот урок очень полезным, ясным и адекватным) был создан риг. И беда в том, что в уроке не говорится, что дальше делать с контроллерами полярных векторов для локтей и коленей -- к чему их прикреплять. Т.е.:
Имеем локатор на месте лодыжки ноги (ну и на запястье руки соответственно тоже), который управляет перемещением IK Handle ноги (Point Constrain), вращением кости стопы (Orient Constrain); а также есть локатор, управляющий полярным вектором этой IK цепи (Pole Vector Constrain). Если все оставить как есть (или даже собрать все кости, IK Handles и локаторы в одну главную группу, за которую можно перемещать персонажа полностью), то тогда при перемещении локатора ноги, локатор колена будет оставаться на месте -- Рис.01.
Это неудобно (если персонаж пойдет, то мне придется ползать по всей сцене, вылавливать эти локаторы -- это неспортивно), поэтому нужно как-то заставить этот локатор колена следовать за коленом. Вот здесь и начинаются трудности.
Поковырялся в забугорных уроках по ригу, там рекомндуют припарентить (parent) группу локатора колена к локатору ноги (в области лодыжки). Если так сделать, то локатор будет двигаться, но может оказаться в самых различных местах, но только не там, где аниматор хотел бы его видеть -- прямо перед коленом. См. Рис.02

Попытки каким-либо образом прикрепить этот локатор колена к кости колена ни к чему не привели -- на Parent, на Point Constrain Maya ругается предупреждениями и аномальным поведением IK цепи.

Обобщаю вопрос:
> Можно ли локатор колена (локтя), отвечающий за ограничение полярного вектора IK цепи при изменении позы персонажа заставить находиться всегда строго перед коленом, сохраняя свою функциональность?
Надеюсь вы поняли о чем я говорю :)

P.S. Бонус-вопрос :)
> Локаторы рук (которые рулят перемещением IK Handles) тоже пытаться припарентить к костям или оставлять их как есть? Смысл в том, что если мы будем перемещать Root кость (в области таза), то все кости, кроме рук и ног будут перемещаться. Ну ноги-то пусть стоят на месте (удобно делать приседания персонажа), а вот руки неплохо было бы перемещаться вместе с позвоночником (да и крутить вместе с плечами тоже). См. Рис.03

Спасибо, что дочитали пост до конца =)
 

Вложения

xeash

Активный участник
Рейтинг
12
#43
НУ ты просто нарвался на хардокорный риггинг=)
Насчет локатора колена... Существует 2 основных ик солвера в мая IK Single chain и IK Rotate Plane...Ты использовал второй...основная разница между ними второй дает больше контроля над вращением в частности через Rotate plane а через Pole vector constraint мы управляем ориентацией ротэйт плейна, но если мы поставим этот объект в ось вращения -сам понимаешь из-за не супер точности юзера получаем безумные косяки... в принципе если мы будем использовать дополнительный скелет из серии IK SC который будет управлять IK RP
 

xeash

Активный участник
Рейтинг
12
#44
НУ ты просто нарвался на хардокорный риггинг=)
Насчет локатора колена... Существует 2 основных ик солвера в мая IK Single chain и IK Rotate Plane...Ты использовал второй...основная разница между ними второй дает больше контроля над вращением в частности через Rotate plane а через Pole vector constraint мы управляем ориентацией ротэйт плейна, но если мы поставим этот объект в ось вращения -сам понимаешь из-за не супер точности юзера получаем безумные косяки... в принципе если мы будем использовать дополнительный скелет из серии IK SC который будет управлять IK RP мы получаем такой нужный нам эффет НО только при ориентации а не сгибе(дело в том что тут начинаются разхождения)...можно замутить дополнительный целевой скелетон для ноги и где будет все смешиваться...Вообщем сходу не скажу=) В моушен билдере есть такая возможность и в некоторых плагинах для майки тоже...но чтобы достичь такого эффекта(+достаточно быстрый риг) нам нужно написать на С свой солвер..имхо
Но в принципе если тебе не нужен большой контроль можешь использовать IK SC и управлять поворотом колена просто вращая ИК солвер...

По поводу рук: Можно замутить 3 скелетона для рук и сделать ИК/ФК переключение между ними(я в этой теме давал ссылку на ресурс где есть такой тутор напр), или если нужно с сохранением ИК?
хм... тогда вот что можно создадим группу с пивот поинтом в центре вращения..(например джоинт позвоночника) припарентим к ней корневые джоинты рук и локаторы, которые управляют ик рук...проверь если вращаешь группу то руки должны вращаться как надо...теперь нам нужно реализовать переключение=) Я вижу версия майи новая тогда смело делаем парент констраинт этой группы к локатору который управляет поворотом позвоночника(я так понял лучше самый верхний т.е. где sternum между ключицами)...затем создаем анимируемый аттрибут который будет управлять переключением поворота(через дривен кэй напр ставим ключи на ВЕС нашего констраинта) и все должно работать..=)
 

xeash

Активный участник
Рейтинг
12
#45
Хм...сколько уже людей "страдают" (?) от этого нивалского тутора?;)
 

DemX86

Активный участник
Рейтинг
18
#46
Xeash
Хадркорный риггинг? Вот у Мараффи в его книге действительно хардкор =)
А этот ниваловский тутор, я считаю, весьма ясный и прямой.

По поводу локаторов для локтей и коленей.
> Ну, про отличия солверов IK SC от RP я читал в хелпе, где я и почерпнул идею о том, что RP в силу своего большего контроля хорошо подходит для скелетов органических персонажей. А SC в силу ограниченности на вращение -- в механических скелетах.
Идея создавать SC и RP для одного рига выглядит для меня пугающе -- я всего лишь хочу сделать очевидный и простой (ну и хорошо бы еще работающий :) ) риг, ведь это всего лишь второй мой риг ^_^

В целом я тут подумал и придумал (на авторские права не претендую =) ) способ управления локтями и коленями без использования ограничетеля Pole Vector Constrain. Суть такова:
-- не используя Pole Vector Constrain, мы получаем возможность припарентить (parent) управляющий локатор локтя к суставу локтя (через группу локатора, опорная точка которой перенесена в центр сустава локтя); это осуществляет то, чего я хотел добиться -- теперь локатор будет всегда находиться рядом с суставом локтя, наследуя его перемещения;
-- у этого локатора создать дополнительный аттрибут (скажем, elbow) и связать его через Connection Editor с параметром twist от ikHandle.
-- эксперименты показывают, что для адекватного поведения IK цепи, необходимо обнулить у ikHandle все три параметра poleVector
Вот и все =)
Теперь когда мы хотим поменять позицию локтя (колена), то мы просто выделяем его локатор (который находится рядом) и елозим параметр elbow, тем самым меняя положение локтя в пространстве. Хотя получается не так наглядно, как в случае перемещения самого локатора, но удобнее по-любому.
Вроде эти система работает, подводных камней не заметил (буду рад услшать авторитетное мнение :) ).


По поводу моего второго вопроса.
> Ваши мысли по этому поводу поттолкнули меня к идеи просто припарентить (parent) управляющие локаторы рук (те, которые на запястьях) к локатору грудного сустава (который является родительским для плечей и рук вообще, V-образные на предыдущем Рис.03). Теперь и при перемещении Root-кости у нас ноги остаются на месте, а руки следуют за позвоночником; а также вращаются руки при вращении локатора грудного сустава.
 

xeash

Активный участник
Рейтинг
12
#47
Да что такое=(...
Послушай...в Этой книжке(которую мучает каждый 3й заинтересованный на этом форуме) саавсем не хардокорный риггинг...поверь мне..там рассказано какие есть стандартные тулзы в мая, понятные для простого юзера и как их использовать чтобы хоть как что-то работало...выучи эти стандартные фичи и иди дальше(читай ищи другие источники)....

Насчет сетапа колена.....наверное это влияние книжки, хотя насколько помню даже там это есть...ТВИСТ управляет Скручиванием джоинтов а не поворотом... Просто да здравстует Gimbal locking!!=)
(насколько я знаю в книжке упоминается это..только не помню как объясненно)

Если что такой параметр вынесен в чаннел едитор Ик солвера...я думал вы хотели брать локатор двигать его меняя ориентацию ротейт плейна...что ж если вам достаточно аттрибута. Тогда вопрос а нафига локатор??? почему например...не на локатор ноги?? Зачем лишний локатор? ради 1ого параметра?
К тому же как я говорил тут будет процветать гимбал локинг..если вам достаточно все таки такого же эффекта как у твиста используйте IK SC на всю иерархию джоинтов ноги(не стопы, насколько я помню в книжке сегментный риггинг=)) и сможете получить тот же эффект просто поворачивая ИК манипулятор при этом уменьшив вероятность гимбал локинга(она будет даж меньше чем при IK RP)...

По поводу поворота Рук относительно Позвоночника (хотя я бы взял точнее точку точнее..стернум)....хм...моя система работает точно так же только с 1 НО: можно переключаться с 1ого режима на другой...Я тут подумал: имеет смысл сделать такое для каждой руки а не вместе как я описывал=)
 

DemX86

Активный участник
Рейтинг
18
#48
По поводу книжки.
> В руках эта книжка была у меня давно, и в основном у меня с ней связаны не самые лучшие воспоминания. Если хотите, можете назвать это предрассудком.

Если что такой параметр вынесен в чаннел едитор Ик солвера...я думал вы хотели брать локатор двигать его меняя ориентацию ротейт плейна...что ж если вам достаточно аттрибута. Тогда вопрос а нафига локатор??? почему например...не на локатор ноги?? Зачем лишний локатор? ради 1ого параметра?
Да, вот это вы метко заметили...
Дело в том, что во всех уроках и книжках по ригу делается имеено так: создаем локатор и делаем ему Pole Vector Constrain. Какие тогда преимущества у этого способа? Все дело только в этом Gimbal Locking?
В принципе этот дополнительный локатор никому не мешает, но я с вами согласен, что создание локатора ради только одного аттрибута -- это довольно странно.

Использование поворота манипулятора IK SC меня не особо радует (оси вращения "скачут" или опять предрассудки? =) ). А использование канала twist у IK RP как-то более наглядно и ясно. По крайней мере для меня. В общем, чувствую, что дело тут глубже, чем кажется, пока что меня мой вариант радует, но думаю дальнейшее использование покажет все проколы. Не хорошо учиться только на своих ошибках, но что поделаешь? ))

По поводу этого пресловутого Gimbal locking... Как я понимаю, это блокировка (точнее совмещении) осей друг другом, которая возникает при использовании режима Gimbal у инструмента Rotate? Просто я слышал про это, но в виду своего скромного опыта я не пользовался этим режимом, да и вообще, пока слабо представляю его свойства...
 

xeash

Активный участник
Рейтинг
12
#49
Gimbal Locking - бич вычисления значений вращения по Эйлеру...Дело в том чтом повороты считаются по каждой оси отдельно в определенном порядке: значало по 1 оси потом по другой и наконец по 3ей..это может привести к тому что 1 ось наложится на другую и залочится т.е произойдет тот самый гимбал локинг.Он присутсвует везде где используется вращение по Эйлеру и ( а не только в режиме гимбал) его нелзья полностью искоренить...можно только уменьшить вероятность его возникновения=)
 
Сверху