Hanbange 3.0 - (C) Breadu Soft 2008

이번 레슨에서는 세컨더리 액션의 오해를 없애고

세컨더리 액션에 대해 전반적으로 살펴보겠습니다

많은 경우 세컨더리 액션은 팔로우-쓰루와 오버래핑과 헛갈리는 개념입니다

그것은 팔로우-쓰루도 아니고 오버래핑도 아닙니다

프라이머리(기본) 액션을 보완하는 액션이 세컨더리 액션입니다

예를 들어서

캐릭터가 걸으면서 흔들거리면

걷기는 프라이머리(기본) 액션이고

흔들거리는 것이 세컨더리 액션입니다

캐릭터가 충격으로 쓰러지는 경우를 예를 들면

부딛쳐서 머리가 흔들리는 모습에서

흔들리는 것이 세컨더리 액션입니다

그럼으로써 프라이머리(기본) 액션을 처음 의도보다 더 강조할 수 있습니다

하지만 프라이머리 액션에서 너무 벗어나거나(??)

세컨더리 액션을 너무 강조하거나

부적절하게 애니메이션 된다면

다른 접근을 고민해봐야 합니다

세컨더리 액션은 프라이머리 액션에 어울리는 것이여야 하기 때문입니다

여기 겁에 질려있는 캐릭터가 있습니다

플레이를 해보면

이미 세컨더리 액션이 적용된 상태입니다

캐릭터가 이리저리 둘러보는데 이 경우에서는 세컨더리 액션에 해당됩니다

여기에 좀더 세컨더리 액션을 추가해보겠습니다

애니메이션 레이어를 사용할건데요

기존의 애니메이션 위에 추가적인 애니메이션을 더하게 되면 효과적입니다

그러기 위해 (??)툴바에서 우클릭을 하고 애니메이션 레이어를 열어줍니다

그리고 Tools > Manage Layers... 를 실행해서

컨트롤 오브젝트가 보이도록 설정합니다

이제 무릎이 조금 떨리는 액션을 추가해봅시다

컨트롤이 어느 부위에 해당되는건지 헛갈린다면 Association Curves를 켜주면 됩니다

캐릭터 리깅을 개발할 때 미리 만들어둔 기능입니다

오른쪽 무릎부터 시작하겠습니다

이미 키가 적용되어 있지만

애니메이션이 많지 않고 나중에는 팔도 흔들어줘야 합니다

오른쪽 무릎 컨트롤이 선택된 상태에서 모션 패널을 열고

Assign Controller 롤아웃을 열어주고

Position > Zero Pos 를 활장해서 X Position을 선택합니다

이 상태에서 Noise Float 컨트롤러를 지정합니다

노이즈 컨트롤러에는 애니메이션 키를 적용할 필요가 없는데

작업 시간을 줄여주는 툴이 제공되기 때문입니다

이 경우 무릎을 흔들게 됩니다

시간을 절약하기 위해서 이 툴을 창의적이고 효과적으로 사용해야합니다

플레이를 해보면 노이즈 컨트롤러를 적용하기만 해도

무릎이 흔들리는 것을 알 수 있습니다

이제 진동수(Frequency)를 원하는 대로 조절해서

다른 느낌을 만들 수 있습니다

나쁘지 않네요

랜덤 시드(Seed)를 변경해줄 수도 있고

노이즈 정도(Strength)를 줄여줄 수도 있습니다

그리고 다른 여러 셋팅들도 변경할 수 있습니다

이 셋팅들은 이후에 좀더 살펴보면서

무릎에 대해 좀더 마음에 드는 액션를 만들어보세요

이제 수정을 위해서 애니메이션 레이어를 사용해보겠습니다

캐릭터가 좀더 우스꽝스러워보이기 위해서

무릎을 안쪽으로 움직이는 상황을 살펴볼까요

양쪽 무릎 컨트롤을 선택하고

먼저 애니메이션 레이어를 활성화 해야합니다

그리고 포지션만 남기고 나머지는 모두 체크를 꺼줍니다

그러면 무릎의 흔들림을 추가할 수 있게 됩니다

로테이션이나 스케일같은 것도 필요 없습니다

OK를 클릭합니다

이제 두 오브젝트에 연결되는 애니메이션 레이어를 만들어야합니다

두 오브젝트가 선택된 상태를 다시 확인하고

레이어를 생성합니다

KneeShake라는 이름으로 변경해주고

이렇게 이름을 붙이면 관리하기가 편해집니다

현재 활성화된 컨트롤러를 복제할지(Duplicate...) 디폴트 컨트롤러를 새로 적용할지(Use Default...)

두 가지 선택이 있는데요 저는 두 번째 것을 선호하는데

깔끔한 상태에서 작업하기 위해서입니다

OK 버튼을 클릭합니다

이제 옵셋(Offset-추가적인 이동값)을 적용할 준비가 되었습니다

Auto-Key를 켜주고 오른쪽 무릎을 선택해서

첫 프레임에서 무릎을 약간 안쪽으로 이동합니다

이제 플레이해보면

무릎이 수정되었습니다

안쪽으로 약간 이동함으로써

좀더 우스꽝스럽게 되었습니다

이제 왼쪽 무릎에도 떨림을 추가하겠습니다

그리고 팔의 떨림은 그 뒤에 마무리 할 것입니다

앞서 했던 것처럼 왼쪽 무릎을 선택하고

포지션 컨트롤러를 열어서...

이때 조심할 것은 이미 애니메이션 레이어가 적용되어있기 때문에

이 경우 베이스 레이어에서 작업해야합니다

Zero Pos XYZ 트랙을 확장해서

X 축 트랙을 선택합니다

그리고 새로운 노이즈 컨트롤러를 적용합니다

오른쪽 무릎의 노이즈 컨트롤러 창은 닫겠습니다

플레이를 눌러서 왼쪽 무릎의 느낌을 보겠습니다

나름 괜찮습니다만 진동수(Frequency)를 약간 낮춰줘야겠습니다

똑같이 셋팅할 필요는 없습니다

반대편과 적당히 다르게 만들겠습니다

이제 해야할 것은 애니메이션 레이어를 사용해서

왼쪽 무릎을 안쪽으로 이동하는 것입니다

첫 프레임에서 무릎을 안쪽으로 더 가까이 이동합니다

잘 되었네요

이런 작업이 얼마나 빨리 이루어지는지 보셨나요

무릎이 떨리도록 하는데 아무런 키프레임도 필요하지 않았습니다

맥스의 이런 툴들을 이용하면 확실히 작업 시간을 아낄 수 있습니다

이제 마무리 하기 위해서...

레이어 매니저를 열고

오른 쪽과 왼 쪽의 IK 컨트롤이 보이게 변경합니다

그리고 둘 다 선택한 뒤

애니메이션 레이어를 활성화 시킵니다

이번에도 역시 포지션 컨트롤러만 필요합니다

원한다면 로테이션도 적용해도 되지만

불필요하다고 생각되네요

이 상태에서 OK를 클릭합니다

두 오브젝트에 새로운 레이어를 생성해줍니다

ArmShake라는 이름을 사용하겠습니다

디폴트 컨트롤러를 사용하는 옵션에서 OK를 눌러줍니다

이제 이 모션에 떨리는 모션을 추가해보겠습니다

마찬가지로 포지션 리스트 트랙을 열고

ArmShake 트랙을 열어주고

X 포지션을 선택해서

노이즈 컨트롤러를 적용합니다

어떻게 보이는지 플레이를 해보죠

괜찮은 떨림이네요

이런 경우 진동수(Frequency)를 낮추거나...

혹은 진동수를 낮추지 않고

노이즈의 강도(Strength)를 낮춰줄 수도 있습니다

진동수를 다시 원래대로 바꾸겠습니다. 0.4정도였던가요

강도를 좀더 낮춰주고 플레이를 해보면...

강도를 너무 낮췄군요

1의 값이 적절해보입니다

화면에 잘 보이도록 창을 좀 옮기고 플레이를 해보면

결과가 만족스럽네요

저는 맥스의 이런 툴들을 좋아합니다

노이즈 컨트롤러 덕분에 많은 시간을 절약할 수 있었습니다

왼팔에도 적용해서 마무리 해봅시다

마찬가지로 Position List > ArmShake > X Position 을 확장해주고

노이즈 컨트롤러를 적용합니다

강도(Strength) 값을 낮춰주는데

1.5 값을 사용해서 반대쪽과 다른 느낌을 적용합니다

어떤 느낌인지 살펴보죠

떨림이 조금 과하네요

0.9 값으로 해보겠습니다

이제 완성되었습니다

이 시점에서 개인적으로 좋아하는 작업은

레이어 매니저를 열고

컨트롤 오브젝트, Association Curve, IK 컨트롤들을 다시 숨겨주고

플레이를 해서 완성된 결과물을 감상하는 것입니다

그리고 세컨더리 액션이 얼마나 잘 만들어졌는지를 살펴봅니다

이제 우리는 세컨더리 액션의 정의와 어떻게 만들고

프라이머리 액션을 어떻게 강조하는지를 배웠습니다

이것을 직접 여러분의 캐릭터에 적용해보고

결과물을 개선시켜보세요