리깅

어트리뷰트 셋업

뚜_ 2025. 4. 8. 20:37

Part 3. Maya Rigging II

Setup Leg Attributes

애니메이터들의 작업 편의를 위해 어트리뷰트와 컨트롤러를 모두 제공하는 방향으로 셋업한다. 발 IK 컨트롤러에 어트리뷰트를 추가하고, 컨트롤러와 그 어트리뷰트의 값을 연결하여 애니메이터들이 어트리뷰트를 수정하여 작업할 수도 있고 컨트롤러를 잡고 작업할 수도 있도록 한다.

 

컨트롤러 만들기

  1. 컨트롤러를 만든 후 hierarchy를 정리해준다.
    Heel_FK: 발 뒷꿈치를 축으로 발을 움직이는 컨트롤러
     ├─ ToeTip_FK: 발 앞꿈치를 축으로 발을 움직이는 컨트롤러
     │   ├─  Toe_IK:  발가락을 축으로 발을 움직이는 컨트롤러
     │   ├─  ToeFlap_FK: 발가락을 움직이는 컨트롤러
  2. IK 핸들의 hierarchy를 적절한 구조로 만들어준다.
    L_Toe_IK를 컨트롤 할 때 L_Leg_RP_IK를 움직여줘야하기 때문에 L_Leg_RP_IK를 L_Toe_IK 컨트롤러의 자식으로 만들어줄건데, L_ Toe_IK의 피봇을 기준으로 움직이면 이상하므로 L_ Toe_IK 밑에 로케이터를 만들어 발목 조인트에 위치시켜준 뒤, L_Leg_RP_IK를 로케이터의 자식으로 만들어준다.
  3. 최종 구조는 오른쪽 이미지와 같다.
  4. 로케이터와 IK 핸들은 hide 해준다.

컨트롤러에 어트리뷰트 추가하기

  1. 컨트롤러 선택 후 Modify - Add Attribute 메뉴를 통해 어트리뷰트를 추가해준다.
  2. 어트리뷰트의 값을 받을 컨트롤러의 transform 값은 항상 0이 되게 해야하므로 컨트롤러에 부모 그룹을 추가하여, 어트리뷰트가 이 그룹에 값을 주도록 한다. 만들어준 그룹은 [컨트롤러 이름]_Attr 이라고 명명한다.
  3. 노드 에디터를 통해 어트리뷰트의 값과 [컨트롤러 이름]_Attr의 해당하는 transform 값을 연결해준다. 
  4. 조금 더 컨트롤 하기 쉽게하기 위하여 바로 연결하지 않고 유틸리티 노드를 중간에 끼워넣을 수 있다. 예를 들어 multiplyDivide 노드를 활용하면 어트리뷰트 값을 조금만 조절하여도 컨트롤러의 transform 값이 크게 변경될 수 있도록 할 수 있다.