XSI 1.5

Hand & Finger Setup

 

 

 

XSI를 이용한 단편 애니메이션 제작

- 단편 애니메이션 'BIRD'를 중심으로 -

 

이종정 / anikoleez@anikoleez.com

www.anikoleez.com

 

 

 

 

Hand & Finger Setup

 

 

  이번 호에서는, 지난 호의 캐릭터 Skeleton Setup 1에서 다루지 못한 손과 손가락 Skeleton Setup에 대해서 알아보도록 하겠다.

  Animation 'BIRD'에 등장하는 캐릭터들은 모두 손가락이 3개이다.[그림1] 손가락이 5개인 사람과는 조금 다른 셈이다. 그러나 그 움직임과 형태가 사람과 거의 같다. 따라서 이번 호에서 설명되어지는 손가락 Setup 방법으로 손가락이 5개인 인간의 손에 적용하여도 무난할 것이다.

  사용된 Software의 Version은 SOFTIMAE XSI 1.5 이다.

 

 

손의 Skeleton Setup

 

1. XSI를 실행하고, 모델링된 캐릭터를 불러들인 다음, 손의 형태에 맞게 MODEL Create Skeleton 2D Chain 명령을 이용하여 Skeleton을 만든다. [그림2]와 같이 손목에서 손등으로 이어지는 Skeleton을 하나 만든다. 그리고 나서 root의 이름을 hand로 바꾼다. 또 첫 번째 Bone(손목에 해당하는 부분)의 이름을 hand_a, 두 번째 Bone(손등에 해당하는 부분)의 이름을 hand_b로 바꾼다.

 

[그림2]

 

  그런 다음, 손가락 부분에 3개의 Bone을 가진 Skeleton을 또 만든다.[그림3] 손가락의 관절이 약간씩 접혔듯이 Skeleton도 Right 뷰포트에서 약간씩 아래 방향으로 휘어지게 만든다. root의 이름을 finger1이라고 바꾸고 첫 번째 마디 Bone을 f1_a, 두 번째 마디 Bone을 f1_b, 그리고 마지막 세 번째 마디 Bone을 f1_c로 이름을 바꾼다.

 

[그림3]

 

  방금 만든 손가락 Skeleton을 하나 복사하여 옆에 있는 다른 손가락에 배치한다. 크기와 Rotation 값을 재조정하고, 이름 또한 finger2, f2_a, f2_b, f2_c로 모두 바꾼다.[그림4] Bone의 길이를 재조정 하고자 한다면, 그 Bone을 선택한 후 Enter를 친다. 그러면 Chain Bone의 프로퍼티 창이 열리는데, 여기서 Geometry/Length 값을 조정하면 Bone의 길이를 변경할 수 있다.  

 

[그림4]

 

  이번엔 엄지손가락 부분에 Skeleton을 만든다. 1개의 Bone으로 구성된 Skeleton을 [그림5]와 같이 만들고 root의 이름을 thumb로, Bone의 이름을 t_a로 바꾼다.

 

[그림5]

 

  그리고 남은 엄지손가락의 두 마디에 해당하는 Skeleton을 2개의 Bone으로 구성되게 [그림6]과 같이 만든다. 그리고 나서 root의 이름을 thumb1로, 첫 번째 Bone의 이름을 t1_b, 두 번째 Bone의 이름을 t1_c로 바꾼다.

 

[그림6]

 

 

2. 지금까지 만든 각각의 여러 Skeleton들을 하나의 계층구조로 연결 지어야 하는데 방법은 다음과 같다.

  먼저 thumb1을 선택하고 Parent 명령을 이용하여 t_a(thumb의 첫 번째 Bone)의 자손이 되도록 한다.(마우스 중간 버튼)  그런 다음 thumb를 선택하고, 같은 방법으로 해서 hand_b (hand의 두 번째 Bone)의 자손이 되도록 한다. 그리고 finger1과 finger2도 마찬가지로 hand_b의 자손이 되도록 만든다. [그림7]과 같이 계층구조가 나오면 된다.

 

[그림7]

 

 

 

 

Custom Parameter Setup

 

3. 이번에는 Custom Parameter Setup을 이용하여 손과 손가락을 제어하는 방법에 대해서 알아보겠다.

  계층구조의 최상위인 hand를 선택하고 ANIMATE Create Parameter New Custom Parameter Set 명령으로 Custom Parameter Set을 만든다. 이름을 Left_Hand 라고 입력한다. 그러면 Explorer 뷰포트에서, hand 아래계층에 Left_Hand라는 Custom Parameter Set이 생성되어 있는 것을 볼 수 있다.[그림8]

 

[그림8]

 

  그런 다음, Left_Hand라는 Custom Parameter Set을 선택하고 ANIMATE Create Parameter New Custom Parameter 명령을 주면 [그림9]와 같이 New Custom Parameter 프로퍼티 창이 열린다. Parameter Name 부분에 finger1이라고 입력한 다음 OK한다.

 

[그림9]

 

  Left_Hand라는 Custom Parameter Set을 더블클릭 하면 finger1이란 Parameter가 생성되어 있는 것을 볼 수 있다. 이 Custom Parameter Set 창을 [그림10]과 같이 rock 시킨다.

 

[그림10]

 

  그리고 나서, Explorer 뷰포트에서 f1_a(finger1의 첫 번째 Bone)의 Kinematics 아래의 Local Transform을 더블클릭 하여 [그림11]과 같이 프로퍼티 창을 연다. 이 창도 역시 rock 시킨다.

 

[그림11]

 

  위와 같은 방법으로 f1_b(finger1의 두 번째 Bone)와 f1_c(finger1의 세 번째 Bone)도 각 Local Transform 창을 열어 rock 시킨다.

  손가락의 마디에 해당하는 f1_a, f1_b, f1_c는 모두, 관절이 구부러지는 방향인 Z축으로 회전해야 손가락을 접고 펼 수 있을 것이다. 그래서, 먼저 f1_a의 Local Transform 퍼로퍼티 창에서 Rotation Z부분의 아이콘을 마우스 오른쪽 버튼으로 클릭 한다.[그림12]

 

[그림12]

 

  그러면 메뉴바가 나오는데 거기서 Link With...이란 명령을 실행한다. 그러고 나면, 이번에는 Simple Explorer 창이 열리는데 여기서 [그림 13]과 같이 Left_Hand Custom Parameter Set 아래의 finger1 Parameter를 선택한다.

 

[그림13]

 

  이제 f1_a의 Rotation Z값이 Left_Hand Custom Parameter Set 아래의 finger1 Parameter에 링크되었다. 아이콘 모양이 바뀌었을 것이다.

  같은 방법으로 f1_b와 f1_c의 Rotation Z값도 Left_Hand Custom Parameter Set 아래의 finger1 Parameter에 모두 링크한다.

 

4. 이제 링크된 Rotation값을 Setting해 보자. finger1 Parameter의 값이 0인 것을 확인하고, f1_a, f1_b, f1_c를 Z축으로 Rotation하여 주먹을 쥔 것처럼 손가락을 최대한 접은 모양으로 만든다.[그림14]

 

[그림14]

 

  그리고 나서, 조금 전 열어둔 f1_a의 Local Transform 퍼로퍼티 창에서 Rotation Z부분의 아이콘을 마우스 오른쪽 버튼으로 다시 클릭 한다. 그러면 메뉴바가 나오는데 여기서 Set Relative Values 명령을 실행한다.[그림15] 이것은 finger1 Parameter의 값이 0일 때 f1_a의 Rotation Z값을 Setting한 것이다.

  마찬가지로 f1_b와 f1_c도 Set Relative Values 명령을 실행시킨다.

 

[그림15]

 

  이번에는 finger1 Parameter의 값이 1일 때의 값을 Setting 할 것이다. 즉 손가락을 모두 폈을 때를 Setting하는 것이다. finger1 Parameter의 값을 1로 바꾼다. 그런 다음, 조금 전 손가락을 모두 접을 때 했던 것처럼 f1_a, f1_b, f1_c를 Z축으로 회전하여 손가락을 최대한 편다.[그림16]

 

[그림16]

 

  그리고 나서, 조금 전과 마찬가지로 f1_a, f1_b, f1_c의 각 Local Transform 퍼로퍼티 창에서 Rotation Z 아이콘을 마우스 오른쪽 버튼 눌러 Set Relative Values 명령을 실행한다.

 

  여기까지 한 다음, Left_Hand Custom Parameter Set 아래의 finger1 Parameter의 값을 마우스로 조정해 보면 finger1 Skeleton의 손가락이 접혔다 폈다 하는 것을 볼 수 있다. 그런데 약간 부자연스러운 것을 발견할 수 있다. 그 이유는 손가락의 각 관절이 일률적으로 접히기 때문이다. 일반적으로 우리가 손가락을 접을 때 각 마디별로 일률적인 각도로 접히진 않는다. 두 번째 마디가 다른 마디에 비해 일찍 접히는 것을 볼 수 있다.

  이것을 해결하기 위해 finger1 Parameter의 값이 0.5일 때의 값을 또 한번 Setting해 준다.

 

 위와 같은 방법으로 f1_a, f1_b, f1_c를 Z축으로 회전하여 손가락이 중간정도 접힌 모양으로 만든다.[그림17] 자신의 손가락을 직접 펴고 접어 보면서 하면 더욱 편할 것이다. 그런 다음 Set Relative Values 명령을 각각 실행한다.

 

[그림17]

 

  다시 Left_Hand Custom Parameter Set 아래의 finger1 Parameter의 값을 마우스로 조정해 보면 조금 전보다 자연스러워진 것을 볼 수 있다.

 

 

5. 다시 Left_Hand(Custom Parameter Set)를 선택하고 ANIMATE Create Parameter New Custom Parameter 명령으로 finger2(약지손가락 부분)와 thumb1(엄지손가락 부분)의 Custom Parameter를 만든다. Custom Parameter의 이름을 finger2와 thumb1로 한다. 그리고 조금 전 작업했던 finger1 Custom Parameter를 Setting하는 방법과 마찬가지로 finger2와 thumb1도 Link With...과 Set Relative Values 명령을 이용하여 Custom Parameter를 Setting한다.[그림18]

 

[그림18]

 

 

6. 이번에는 엄지손가락 아래 부분의 Skeleton인 thumb를 Custom Parameter로 Setting해 보자. 이 부분의 Skeleton은 finger1과 같은 손가락과는 조금 다른 움직임을 갖는다. 그것은 엄지손가락과 같은 방향의 관절을 가졌음에도 불구하고 서로의 영향을 받지 않고 움직이는 경우가 많다는 것이다. 그래서 이 부분을 단일 Bone으로 구성하였다.

 

  같은 방법으로 Left_Hand(Custom Parameter Set)를 선택하고 ANIMATE Create Parameter New Custom Parameter 명령으로 thumb란 이름으로 Custom Parameter를 만든다. 그런 뒤, Skeleton thumb의 첫 번째 Bone인 t_a의 Rotation값을 thumb Custom Parameter에 링크한다. Custom Parameter의 수치가 0일 경우, 주먹을 쥐었을 때의 이 부분의 회전 값으로 링크한다.[그림19] 그리고 Custom Parameter의 수치가 1일 경우, 손을 쫙 폈을 때의 회전 값으로 링크하면 된다.[그림20]

 

[그림19]

 

[그림20]

 

  또한, 더욱 세밀한 동작을 위하여, 엄지손가락을 벌렸을 때와 붙였을 때 이 부분(thumb)의 회전 값을  Custom Parameter로 Setting해 놓을 수도 있다. 이것은 다른 손가락에도 물론 해당된다. 이처럼 더욱 세밀한 동작 제어를 위해 원하는 부분을 Custom Parameter로 Setting 해놓을 수 있다.[그림21]

 

[그림21]

 

  손목 또한 마찬가지이다. 손목은 앞뒤로 접히는 동작과 좌우로 접히는 동작, 그리고 손목을 돌리는 동작을 Custom Parameter로 Setting하면 된다. Custom Parameter로 Setting하는 방법은 위에서 설명한 방법과 동일하다.[그림22]

 

[그림22]

 

 

  이상으로 캐릭터 Skeleton Setup 과정 중, 손과 손가락의 Skeleton Setup, 그리고 Custom Parameter를 이용하여 손과 손가락을 제어하는 방법에 대해서 알아보았다.

 

  본지에 캐릭터 Animation 제작에 관한 연재를 시작한지도 어느덧 4개월이라는 시간이 지났다. 요즘 들어 시간이 참 빠르다는 것을 새삼 느끼게 된다. 바로 며칠 전에 첫 회 원고 준비에 바빴던 것 같은데, 벌써 4개월이라니...  그동안 모자란 필자의 글을 읽어주신 독자 여러분께 감사의 말을 전하며, 캐릭터 Animation에 관심 있는 user 여러분께 조금이나마 도움이 되었기를 바란다.

 

 


copyright 2002, anikoleez. All rights reserved.