Render.ru

вопрос по сетапу

chiaroscuro

Активный участник
Рейтинг
5
#1
очень комплексный вопрос.
что касается форвард кинематик рига: у меня есть два сочленения руки, есть контрольный объект. я так понимаю, что надо оси кости и контрольного объекта совместить, чтобы вращение потом численно полностью совпадало. но оси ротейт контрольного объекта не соответствуют осям кости (даже если направления осей совпадают, кость слегка повернута, и довольно большое расхождение всегда есть) , и когда я делаю констрейнт ориент кости к объекту, кость может на 180, -180 градусов обернуться. в итоге, когда вращаешь контрольный объект, численные значения ротейта кости меняются как попало, не говоря уже об отзеркаленных суставах, где поворот после ориент на 360 градусов идет.
вообщем, я конкретно застряла на этом вопросе. если кому не лень, объясните что я не так делаю, или может есть какой нить тутор подробный по ригу, можете на него отослать.
 

Skif

Администратор 3D галереи
Команда форума
Рейтинг
584
#2
все на самом деле просто.
1. создается манипулятор например циркул. координаты 0,0,0
2. группируется 2 раза. и обязательно переименовываются все группы. оси у групп и объекта получается совпадают. получится примерно вот такая картинка. как именовать выбирай сама.. я лично вот так именую как на пикче. (Leg_R_grp01 - Leg_R_SDK01 - Leg_R_Ctrl01)
3. Выберается кость на которую надо подвесить манипулятор. потом группа Leg_R_grp01 и после этого делаем обычный парент (не констрейнт)
у группы Leg_R_grp01 появились в ротейте и транслейте какие то значания. их просто обнуляем. вуаля. манипулятор встал на место сустава и повернут так же.. обязательно сразу сделать анпарент.
(при 2 условиях. 1 если у костей был сделан ориент. 2. если вдруг манипулятор повернут на 90 градусов, то смотри пункт дальше.)
4. еслни вдруг маипулятор повернут на 90 градусов, если его просто повернуть то в ротейте появится значение 90. чтоб этого избежать выбери у манипулятора все контрол вертексы посмотри по какой оси нужно повернуть (в моем случае по Z) в командной строке ввести (rotate -r 0 0 90)
соответственно 0 - Y, 0 - X, 90 - Z.
манипулятор повернут а значения в норме.. тоесть нулевые. у самого манипулятора ( Leg_R_Ctrl01) все значения нулевые. у группы (Leg_R_SDK01) тоже. а вот у самой верхней группы (Leg_R_grp01) они отличаются.
этим мы добились того что оси объектов совпадают, ну а потом ориент кости к манипулятору. если создавать цепочку манипуляторов, то верхнюю группу парентить к манипулятору выше по иерархии и тд..
какие то сет дривен кеи и тд лучше присваивать группе Leg_R_SDK01 так как она нулевая и воздействия на ней ведут за собой воздействие на сам манипулятор.

так же файл с примером прикреплен. txt переименовать в rar. файл 2008 мауа.
 

Вложения

Skif

Администратор 3D галереи
Команда форума
Рейтинг
584
#4
не за что.. :)
если есть ещё вопросы по ригу - пиши. постараюсь ответить.
 

Denzil

Мастер
Рейтинг
353
#5
Тебе сюда, Паша ведь старался как раз для таких как ты. :)

http://render.ru/books/show_book.php?book_id=433
 

Ifir

Активный участник
Рейтинг
17
#6
Вот ещё вопросик. не пойму помогите.
Ик хендл между двух джоинов, к нему поле вектор констрейн. Цилиндр сзади это контроллер поле вектор констрейна.

Не понятно почему когда я вращаю оси локтевого джоина, то и прилегающие кости этого джоина начинают вращаться непонятным образом.
 

Вложения

Ken_Zin

Мастер
Рейтинг
108
#7
Lekar, не стоит торопиться. У тебя не правильный скелет. Скачай и посмотри хотя бы например этот урок ссылка на варез , который Digital Tutors - Character Setup in Maya или подобные, накачайся информацией из интернета вобщем как можешь. Риг - дело "хитрое", аккуратно подходить надо
 

Ifir

Активный участник
Рейтинг
17
#8
Lekar, не стоит торопиться. У тебя не правильный скелет. Скачай и посмотри хотя бы например этот урок http://www.cgsoft.ru/tags/Maya/page/17/ , который Digital Tutors - Character Setup in Maya или подобные, накачайся информацией из интернета вобщем как можешь. Риг - дело "хитрое", аккуратно подходить надо
1)Диджиталовские туторы по ригу я уже все пересмотрел.
2)Скелет не правильный потому что это не скелет, а пример.
3) Информации я накачался, но обьяснения как ориентация кости в сочетании с ик хендлом работает не нашёл.
4) И я как раз не тороплюсь. Сделал очень простенький пример и хочу разобраться как это работает. Ведь без понимания основ дальше тяжело разбираться будет.
 

Denzil

Мастер
Рейтинг
353
#9
Не понятно почему когда я вращаю оси локтевого джоина, то и прилегающие кости этого джоина начинают вращаться непонятным образом.

Вопрос не понятен.
Зачем врашать локоть, если включен ИК?
Если выкючен - ИКбленд = 0, все будет ок.
 

Ifir

Активный участник
Рейтинг
17
#10
Цитирую Lekar #6:Не понятно почему когда я вращаю оси локтевого джоина, то и прилегающие кости этого джоина начинают вращаться непонятным образом.


Вопрос не понятен.
Зачем врашать локоть, если включен ИК?
Если выкючен - ИКбленд = 0, все будет ок.
Я не вращаю локоть, а вращаю только оси локтевого джоина. А делаю это не для того чтоб управлять рукой в данном случае а для того чтоб понять как оно вообще работает.
 

Denzil

Мастер
Рейтинг
353
#11
Я не вращаю локоть, а вращаю только оси локтевого джоина. А делаю это не для того чтоб управлять рукой в данном случае а для того чтоб понять как оно вообще работает.

Оси нужно было вращать ДО применения ИК, после вся математика управляется ИК.
А понять его очень просто. Вектор (направление) первого джоинта (не важно сколько костей в ИК) будет смотреть на Объект, отвечающий за поле вектор, он же задает плоскость, в которой находятся джоинты. Все. Больше ничего знать не нада.
Удачи.
 

Ifir

Активный участник
Рейтинг
17
#12
Denzil (3D Award)
Понятно. Спасибо.
А я то думал там какой-то тайный смысл.
 
Сверху