Arm Hand Fingers
Poza palcami które zobaczyłem w "ManCandyFaq" rigg całej ręki jest standardowym rigiem składającym sie z trzech części. Kości od obojczyka do nadgarstka to łańcuch IK. Dłoń przyczepiona Constraints odpowiadającym za położenie by animator mógł nadawać dłoni niezależną rotacje od całej reki. Palce tu zriggowane poprzez połączenie FK i IK tak by jednym kontrolerem sterować całym palcem.
Arm Bones
Za pomocą narzędzie Joint tworzymy kości dla naszej ręki. Ponieważ bedziemy rigować rękę etapami również nie będziemy tworzyć od razu wszystkich kości. Na początek tworzymy pierwszy zestaw kości który połączymy łańcuchem IK, pamiętajmy o tym żeby poprawić orientacje wszystkich kości za pomocą narzędzia Joint Orient : (Ilustracja1):
- Arm_L
- Shoulder_L
- Elbow_L
- Wrist_L
Arm IK
Zanim stworzymy pierwszy łańcuch IK przygotujmy sobie dwa kontrolery jeden CTR_Elbow_L i drugi CTR_Wrist_L zrobione z krzywej i zamknięte w grupie by można było uzywać 'Reset Transformation'. Ustawiamy je w odpowiednich miejscach korzystając z Constraints które kasujemy. Teraz zaznaczamy kość Wrist_L i wybieramy z menu 'Skeleton' IK Handle tools klikajac na ikonę kwadratu, z pop-up menu wybieramy łańcuch IK typu ikPRSolver który umożliwia przypisane 'Pole Vector' czyli ograniczenia determinującego w którą stronę będzie zginał się łańcuch IK. Jako początek układu wybieramy Wrist_L a jako koniec Shoulder_L, następnie zaznaczamy naszą krzywą CTR_Elbow_L + stworzony kontroler IK_Wrist_L i z menu Constraints wybieramy 'Pole Vector'. Pozostaje nam jedynie sparentowanie kontrolera IK_Wrist_L do krzywej CTR_Wrist_L, możemy to zrobić przeciągając SPM (środkowy przycisk myszy) jeden kontroler na drugi jak na ilustracji2.
Finger Bones
Tworzymy dwa łańcuchy kości jeden będzie odpowiadał za FK, a drugi za IK. Gdy połączymy te dwa kontrolery razem otrzymamy rigg dla naszego palca. Łańcuch FK składa sie z trzech kości Finger1_Base_FK, Finger1_Bend_FK i Finger1_END_FK, łańcuch IK który będzie później przypisany do naszej siatki składa sie z poszczególnych części palca u nas trzy kości Finger1_A_IK, Finger1_B_IK , Finger1_C_IK i Finger1_END_IK. Staramy sie ustawić przy naszym łańcuchu IK niewielki łuk byśmy mogli łatwo zdeterminować kąt dla zgięcia palca. W oknie Attribut Editor możemy zmienić promień naszych kości by odpowiadały wielkością do siatki ilustracja3
Finger FK IK
Musimy połączyć układy KF i IK, aby to zrobić najpierw przypisujemy Constraint Piont do kośći Finger1_A_IK z kości Finger1_Bend_FK, następnie przypisujemy podobne ograniczenie do Finger1_END_IK z kości Finger1_END_FK. Mając zablokowany łańcuch kości IK ustawmy go odpowiednio do krzywizny palca, gdy już ustawimy kształt musimy skasować Constrain kości Finger1_END_IK. Następnie tworzymy łańcuch IK typu ikSCSolver od kości Finger1_END_IK do Finger1_A_IK powstały kontroler IK_Finger1 parentujemy do kości Finger1_END_FK. cały układ powinien działać jak na ilustracji 4, skalując naszą kość Bend możemy zginać palec a obracając nim obracamy palcem. .
Finger Control
Ponieważ program Maya oferuje Constraint Scala możemy przypisać jeden kontroler który będzie nadawał naszemu palcu rotacje poprzez Constraint Orient jak i będzie go zginał poprzez Constrain Scala. Tworzymy kontroler ustawiamy go w miejscu Finger1_Bend_FK jak również nadajemy mu odpowiednią orientacje (ograniczenia Piont i Orient do kości Bendk które od razu kasujemy) a następnie przypisujemy do kości Finger1_Bend_FK dwa Constraint Piont i Scale z naszego kontrolera. Obracając naszym kontrolerem obracamy palcem a skalując go będziemy go zginać. Wadą tego rozwiązania jest fakt, że przy małej skali/ dużym zgięciu palca kontroler może wchodzić w siatkę. (Ilustracja5) Wszystkie palce wykonujemy w podobny sposób pamiętając o nazewnictwie i orientacji kości.
Hand
Kość Hand_L jest kopią kośći Wrist_L przypisanym Constraint Point z tej właśnie kości oznacza to w praktyce ze tam gdzie kość nadgarstka tam będzie i kość dłoni ale już bez rotacji. Dzięki tamu zabiegowi możemy dowolnie ustawiać dłoń. Mając kość Hand_L przenosimy wszystkie łańcuchy FK i wszystkie grupy odpowiadające za palce pod jej hierarchii następnie przypisujemy naszej kości Hand drugi Constrain Orient z CTR_Wris_L(jeżeli nie jest on idealnie ustawiony z naszą kością możemy włączyć opcje offfset) ilustracja 6.