런타임 스왑
이 샘플은 스프라이트 라이브러리 API를 사용하여 특정 엔트리를 오버라이드하는 방법을 보여 줍니다. 샘플을 사용하려면 PSD Importer가 설치되어 있어야 합니다. 6 Runtime Swap 씬을 열어 샘플의 실제 동작을 확인합니다.
그래픽 에셋은 Assets/Samples/2D Animation/[X.Y.Z]/Samples/5 SpriteSwap/Sprites 경로에 있습니다.
Knight.psbSkeleton.psb
Skeleton.psb는 Knight.psb의 .skeleton 에셋을 사용하여 리깅을 수행합니다. 또한 Assets/Samples/2D Animation/[X.Y.Z]/Samples/5 SpriteSwap/Sprites 경로에 있는 Knight.spriteLib 스프라이트 라이브러리 에셋을 참조합니다.
런타임 스왑 스크립트
RuntimeSwap이라는 커스텀 MonoBehaviour 스크립트가 KnigtboyRig 게임 오브젝트에 부착됩니다. 해당 스크립트는 Assets/Samples/2D Animation/[X.Y.Z]/Samples/5 SpriteSwap/Scripts/Runtime/RuntimeSwap.cs 경로에 있습니다.
샘플 씬에서 Skeleton.psb의 스프라이트가 설정된 버튼을 누르면 스프라이트 라이브러리의 override API를 사용하여 해당 스프라이트 엔트리를 오버라이드합니다.
m_SpriteLibraryTarget.AddOverride(entry.sprite, entry.category, entry.entry);
샘플 씬에서 Knight.psb의 스프라이트가 설정된 버튼을 누르면 스프라이트 라이브러리의 override REST API를 사용하여 해당 스프라이트 엔트리를 오버라이드합니다.
m_SpriteLibraryTarget.RemoveOverride(entry.category, entry.entry);