본문 바로가기
tips/유니티 & 개발

유니티 2D 애니메이션 3 - Sprite Skin, IK

by 디지털 수공업자 2020. 9. 5.
반응형

1. 스프라이트 구조

앞서 설정이 모두 끝난 뒤 Sprite Editor를 닫고, 스프라이트(PSB)파일 Scene으로 꺼낸다.
위에서는 Empty GameObject에 스프라이트를 넣은 상태이다. 스프라이트 하위에는 만들었던 본이 Transform만 있는 오브젝트로 추가되어 있고, 나머지는 PSB파일로 가져올때 레이어로 구분되어있던 스프라이트들이 소속되어 있다.

각 Bone을 선택해보면 Transform만 덜렁 붙어 있다.

그리고 각 부위별 스프라이트를 선택해보면, Sprite Skin 콤포넌트가 붙어 있으며, 여기에 Skinning Editor의 Bone Enfluens에서 설정했던 스프라이트에 영향을 주는 Bone과 Root Bone이 추가되어 있는것이 보인다.
이제는 스프라이트의 Transform은 건드리지 않고, Bone의 Transform을 수정하여 Animation Key를 잡을 수 있다.

Scene 에디터의 우측 상단 Gizmos가 켜져 있다면 설정했던 본이 스프라이트에 겹쳐 나타나보인다.

 

2. 2D IK 패키지 설치

Package Manager 에서 2D IK 패키지를 설치해야 하는데, Package Manager 창의 상단에 있는 Advanced 버튼을 눌러 Show preview packages를 선택해줘야 Unity Registry 목록에 2D IK가 보인다. *유니티 2019 기준.

2D IK의 버전 옆 preview 주황색 글씨가 보인다.

 

3. IK Manager에 Limb Solver2D 추가

꺼내놓은 스프라이트 오브젝트의 루트 오브젝트에 IK Manage 2D 콤포넌트를 추가한다.

추가된 IK Manager 2D 콤포넌트의 IK Solvers에 Limb을 추가한다.

스프라이트 하위에 New LimbSolver2D 오브젝트가 생성된다. 생성된 오브젝트를 선택하고 Inspector에서 오브젝트 이름의 좌측에 있는 아이콘을 클릭. LimbSolver2D의 아이콘을 변경해준다.

오른쪽 발로 사용하기 위해 이름을 변경해 주었다.

다시 Inspector의 Limb Solver 2D에서 Effector에 컨트롤 할 발의 본을 연결해주고, 아래의 Create Target을 눌러준다.
조금 전 생성했던 Limb Solver 2D 오브젝트 아래로 Target오브젝트가 생성되며 Effector아래의 Target 항목에 추가된다.

Limb Solver 2D가 연결된 후 관절이 꺽이는 회전 방향이 아래와 같이 반대로 꺾인경우 Inspector에서 Flip항목을 체크해주면 무릎이 반대로 꺽인다.

Limb Solver 2D 생성 과정을 필요한 만큼 반복한다.
필요한 만큼 만들고 Solver를 움직여 뼈대가 잘 따라오는지 확인한다. 아래의 예는 Weight를 정리하지 않은 상태라서..

 

1편 PSB 파일
boxwitch.tistory.com/16

2편 Bone, Geometry, Weight
boxwitch.tistory.com/17

4편 Swap Sprite
boxwitch.tistory.com/21

반응형

댓글