유니티 아바타 옷 입히기 - yuniti abata os ibhigi

- 세줄요약

1. 아! Armature에 있는 신체부위 이름붙은건 다 내 몸을 트래킹하는구나!

2. 아! 내 척추가 움직이면 척추에 달린 목도 같이 딸려오겠구나! (부모관계)

3. 부모관계를 이용해서 옷이 아바타의 본에 딸려오게 만들자!

여기는 현장요원 퍼지.

유니티 버전도 많이 바꼇고, 기존 글이 방법만 알려주거나, 영상으로 되어있다보니까 그만큼 이해하기 어려울수도 있겠다 싶더라고.

그런고로 원리를 직접 보면서 해보도록 하자.

그래서 다른 옷입히기 강좌에 비해 엄청나게 김.

아바타 어셈블러 쓸 줄 알면 이미 뉴비가 아니니 이 글 안봐도 됨.

0. 아바타는 어떻게 움직이는가?

너네가 지금까지 했을 것들.

아바타 업로드도 못했는데 옷을 입히니 마니 하진 않을거잖아?

업로드부터 막혔으면 이 글부터 보고 시작하자

> 암캐 시리즈 1편 (아바타 업로드)

부스에서 산 아바타는 대부분 그냥 업로드해도 너네 몸을 잘 트래킹한다.

그 이유는 아바타 만든 사람이 이런거 다 해뒀기 때문이다.

유니티에서는 휴머노이드 타입 아바타를 지원하는데, 이런식으로 본을 다 설정해놓는다.

보면 다 너네 Armature에 들어있는 것들이잖아?

그래서 위의 녹색으로 나오는거에 연결된 본들이 너네 현실 움직임에 맞춰 움직인다.

저기서는 손이 Hand.L이랑 Hand.R이니까 너네가 손을 움직이면 이 둘이 따라 움직일거임.

이건 별로 중요한건 아니니까 모르겠으면 "아! Armature에 있는 신체부위 이름붙은건 다 내 몸을 트래킹하는구나!" 라고 이해하면 됨.

예를 들면, Hips, Spine, Chest, Neck, Head 같은 애들.

팔다리부터는 아바타 제작자마다 이름 두는게 다르지만, 영어 9등급이 아닌 이상은 알아볼거임.

그런데 보면 이런식으로 계층이 되어있다.

왜 그런걸까?

그야 너네 다리와 척추는 골반과 연결이 되어있어서 그렇다.

왜 시작이 골반이냐면 유니티가 그렇대

그래서 골반 위로 척추, 가슴, 목, 머리

가슴에서 또 갈라져나와서 양어깨 양팔 양손

골반 밑으로 양다리 양발

식으로 연결이 되어있다.

당연히 가슴이 앞으로 가면 너네 목도 같이 앞으로 딸려가겠지? 연결이 되어있으니까.

그래서 그걸 가슴 본 안에 목 본을 넣어서 구현되어있어.

위에있는 것이 움직이면, 아래에 들어있는 애들도 같이 딸려간다.

이걸 우리는 부모관계라고 말해. 위에있는게 부모, 밑에있는게 자식.

모르겠으면 이거만 기억해라.

"아! 내 척추가 움직이면 척추에 달린 목도 같이 딸려오겠구나!"

1. 옷을 어떻게 넣어야할까?

귀여운 퍼지에게 메이드복을 입혀보자.

아바타 안에다가 너네 옷 슉 던져넣고 시작하면 된다.

보면 옷 안에도 본들이 들어있다.

왜냐면 당연하게도 아바타가 옷을 입어서 움직여야하기 때문임.

신체부위별 본이 다 있는데, 전용 옷이니까 너네 아바타 스케일 1.0일 때 기준으로 다 처리가 되어있을거임.

이렇게 입히는게 목표겠지만

실제로는 이렇게 입히면 옷은 저 상태로 굳고 아바타는 알몸으로 움직이게 될거야.

왜냐면 본의 위치가 변하고있지 않기 때문이지.

그럼 왜 옷의 본을 저렇게 해 두었을까?

편하게 저 본들 이름같은 곳에다가 넣어서 쓰라고 만든거다.

위에 말한 부모관계를 이용해서 옷이 아바타의 본에 딸려오게 만드는거임.

척추가 움직이니, 척추에 씌어진 옷이 같이 움직이게 되는거지.

척추를 움직이면 거기 붙은 가슴도 같이 움직이는데

그거처럼 옷도 같이 딸려서 움직이게 만들자는게 핵심이야.

옷 우클해서 이거 눌러주자.

Prefab 상태에서는 본들 못옮김.

Hips로 당겨준다.

그럼 이렇게 될거임.

이제 옷의 Hips 본은 아바타의 Hips본에 딸려 움직이게 됨.

어? 그럼 본마다 이렇게 다 넣어주면 되나?

Spine 본은 Spine 본에 넣고

Chest 본은 Chest 본에 넣고?

맞긴 한데 주의사항이 한가지 있다.


Spine은 옮겨도 되는데, SkirtRoot는 옮기면 안된다.

이름이 달라서가 아니라, 같은 이름이라도 옮기면 안된다.

대부분의 아바타에는 기본옷들이 있다.

퍼지의 경우에는 원피스를 입고있다.

다른 옷들은 몸에 딱 달라붙으면 되니까 상관없는데

스커트는 천들이 펄럭거려야하잖아?

그래서 스커트에는 본이 따로 들어가있고, 그걸 모아둔 게 SkirtRoot가 된다.

얘는 엉덩이랑 같이 움직이는 별개의 본이지, 아바타가 움직이기 위한 관절이 아니라는 의미임.

원피스는 아바타의 Hips에 딸려서 같이 움직여야 하고

메이드복의 SkirtRoot는 그냥 메이드복에 딸려서 같이 움직이는거니까, 메이드복의 Hips에 그대로 있어야한다는 의미임.

같은 방식으로 생각해보자.

Neck, Shoulder.L/R은 신체부위다. 그러니까 원래 아바타 본에 넣어준다.

하지만 ChestRibon.Root 와 ChestRibbonColider는 옷에 대롱대롱 붙어서 움직여야하는 애들이다.

그러니까 얘들은 냅둬야한다. 옷의 Chest에 그대로 두면 됨.

보통 DBC, Collider 같은 이름으로 된거는 피직스본/다이나믹본에 쓰던 거니까 SkirtRoot 마냥 옷 본에 남겨두면 됨.

이렇게 하나하나 다 넣으면

짜잔 아바타와 한 몸이 되어버린 옷을 볼 수 있답니다!

기존 옷은 여기서 체크해제해줘야 안보임.

그냥 Hierarchy에서 눈알눌러서 숨기기만 하는건 실제 업로드시에 같이 올라감.

옷장은 이거보고 하면 됨.

> 암캐 시리즈 7편 (옷장 만들기)

나중가면 아바타 어셈블러니 뭐니해서 더 최적화도 하고 할건데

일단은 당장 옷 입히고 올리는게 더 급할거니 이렇게 땜빵쳐두도록 하자.

여기서 알아낸 부모관계는 앞으로 아바타 꾸미는데 계속해서 널 도와줄거야.

그럼 다들 화이팅!


질문이나 수정사항들 덧글로