2013년 6월 26일 수요일

unity3D animation

유니티를 이용하여 에니메이션을 하려면 방법은 여러가지다...

1) 스프라이트 에니메이션

랜더링 이미지던.. 수작업 이미지던 간에.. 이를 한 판에 몰아넣고.. 에니메이션을 하는 방법인데... 이런 방법론은..

수정이 용이치 않기 때문에...한번 작업하면 끝까지 가는 경우가 많다.
그렇기 때문에 낱장으로 작업을 하여.. 해당 폴더에 있는 이미지를 통으로 순차적 에니를 하는 경우가 많은데...

문제는 핸드폰에서는 이런 방법론은 지양해야 한다는 것이다.
퍼포먼스 문제인데...

대신 다른 방법론으로...

NGUI 와 같은 툴깃을 사용하는 것이다...
이경우..

문제는 C#에 능통해야 한다...
간단하에 뭘 고치는 수준이라면 몰라도.. 이게 프로그램 전반적으로 영향을 주려면..
C#에 능통하지 않으면..오히려 맨바닥에 하는 것 보다 어렵다..

처음 게임을 개발하는 이들에게 절대 권하고 싶지 않은 방법이다.

하지만.. 의외로 유니티를 이용해서 2d 게임을 하고자 하는 사람들이 많아... 적극적으로 고려해봐야 하는 것이 사실이다...


a. ngui 와 같은 툴깃을 사용한다.
b. unity 에서 한통에 이미지를 모두 붙여 작업한다.
c. unity 에서 랜더링 이미지를 교체하여 낱장으로 작업한다.

2) 로프트 에니

각각의 플랜을 기반으로 에니메이션을 한다.
즉, 낱장의 플랜에 캐릭터를 부분 맵핑하여 작업 한다.

이경우에 방법론은 두가지인데.. 둘다..
일단 맥스에서 축을 가져와야 한다는 것은 똑같다

맥스에서 플랜에 맵핑하여 캐릭터를 만든 후
각 플랜에 맵핑으로 얼굴 다리 손등을 표현하고
이를 링크시켜서.. 각각의 플랜의 축을 만든다.

이후..
a. 맥스에서 작업하고 모든 에니를 담은 fbx 파일로 export 하여 유니티로 가져온다.
b. 맥스에서 축까지 만든 화일을 가져와서.. unity에서 에니 작업을 한다.

일단 a 방법은 무난하고 쉽다.
b 방법은 만만하지 않다.

그러나.. b는 anim 으로 작업되기 때문에 60프레임까지 나온다.
a 방법은 anim을 fbx에서 추출해야 한다....
결국 추천할 방법은 a 방법이다.

3) 3d 에니..

유니티가 가장 기본적으로 제공하는 방법이며..
방법론은 2번 과 같다.


2. export와 import

일단.. 맥스에서 export 하는 것은 쉽다...
그러나.. 여러가지 주의를 해야 하는데...

먼저...
모든 모델링은 기본 더미가 있어야 한다.
물론 유니티에서 빈 게임 오브젝트로 해도 된다.
두번째.. 달라진 축에 맞춰 작업해야 한다.

기본적으로 export 옵션도 있지만..
back을 보고 작업해야 유니티에 맞다....

유니티에서 돌릴수도 있지만.. 에니메이션 기본 방향을 참조한다...
괜히 삽질하지 말고..
그냥 무식하게 작업하자..

문제는 import 다...
유니티가 발전하여 지금은 ani 방법론이 좀 달라졌다..
이게 옳은 방법이나 어렵다...

기존에 하던대로 하자...

import 옵션을 조절하여
이전 방법으로 사용한다.

제대로 했으면...
fbx 로 만든 프리팹에.. 에니메이션 컴포넌트가 같이 들어온다....
플레이 했을때
에니메이션이 바로 된다면.. 성공..

animator이 들어왔다면...
컨트롤로를 사용해야 하며... import 옵션 조절 실패...
이걸 사용해서 하려면.. 좀더 공부하길...
프로젝트도 더 큰 것이어야 한다.















댓글 없음:

댓글 쓰기