1. 교체할 스프라이트 준비
Swap기능을 사용하려면 교체하기 전 스프라이트와 동일한 Bone, Geometry셋팅이 되어있는 다른 스프라이트를 준비한다.
딱히 스프라이트가 구부러지거나 접힐 필요없이 단독으로 교체되는 것이라면 그냥 스프라이트 교체만 해도 된다.
2. Sprite library asset
asset폴더안 어딘가에 Sprite library asset 파일을 생성한다.
캐릭터를 구성하고 있는 스프라이트들 각각을 Sprite library에 등록해두고 교체한다.
생성된 Library를 선택하고 Inspector에서 + 버튼을 눌러 Category List를 추가하고, 추가된 Category List의 이름과 사이즈를 작성하고 바꿀 스프라이트를 연결해준다. Category List에 연결한 스프라이트들은 캐릭터 스프라이트와 동일한 Bone과 Geometry설정을 가진 스프라이트이다.
다른 부위 교체가 더 필요하다면 Category를 추가하여 구성한다.
Scene에 나와있는 캐릭터 스프라이트 중 교체하려는 스프라이트 오브젝트에 Sprite Library 콤포넌트를 추가하고, 위에서 만든 Sprite Library Asset파일을 연결해준다.
3. Sprite Resolver
같은 오브젝트에 Sprite Resolver 콤포넌트를 추가하고 Category에 Sprite library에서 만들었던 Category항목을 선택하면, Library에서 등록했던 Category의 아이템들이 모두 나타난다. 아이템을 선택하면 스프라이트가 즉시 교체되는 것을 확인할 수 있다.
4. Script
using UnityEngine.Experimental.U2D.Animation ;
public class PlayerPartsSwitcher : MonoBehaviour {
public void SwitchParts() {
spriteResolver = GetComponent<SpriteResolver>() ;
// SpriteResolver 콤포넌트 연결.
spriteResolver.SetCategoryAndLabel(categoryName, labelName) ;
// Category이름(string)과 Label이름(string)으로 세팅.
}
}
1편 PSB 파일
boxwitch.tistory.com/16
2편 Bone, Geometry, Weight
boxwitch.tistory.com/17
3편 Sprite skin, IK
boxwitch.tistory.com/20
참고자료.
unity 2d animation. youtu.be/EZtpACxCTEE
sprite swap. youtu.be/hUERvxcKt_I
'tips > 유니티 & 개발' 카테고리의 다른 글
블렌더 Isolated mode. 오브젝트 숨기기/보이기 (0) | 2020.09.10 |
---|---|
블렌더. 오브젝트 모드에서 피봇 위치 변경, 스냅 (0) | 2020.09.09 |
유니티 2D 애니메이션 3 - Sprite Skin, IK (4) | 2020.09.05 |
유니티 2D 애니메이션 2 - Bone, Geometry, Weight (0) | 2020.09.04 |
유니티 2D 애니메이션 1 - PSB파일 (0) | 2020.09.04 |
댓글