2D 멀티 스프라이트 캐릭터를 만드는 가장 일반적인 방법은 계층 창에서 여러 스프라이트 렌더러를 함께 정렬하고 부모로 지정하여 캐릭터를 형성하는 것입니다. 이러한 복잡한 멀티 스프라이트 캐릭터를 관리하기 위해 Sorting Group을 사용할 수 있습니다.
아래 예시에서 스프라이트 렌더러는 동일한 Sorting Layer에 속하지만 Order in Layer 값은 다릅니다. Unity는 캐릭터의 다양한 부분을 원하는 순서대로 정렬합니다.
정렬 그룹과 정렬 레이어를 설정한 후 캐릭터를 프리팹으로 저장한 후 원하는 만큼 많이 복제할 수 있습니다.
그러나 프리팹 스프라이트는 모두 동일한 Sorting Layer 및 Order in Layer 값을 가지며, 다른 프리팹과 동일한 레이어에 렌더링되므로 프리팹 캐릭터의 다른 부분이 교차하여 잘못 레이어링될 수 있습니다.
프리팹이 렌더링 순서를 일관되게 유지하여 정확하게 표시되도록 만들려면 각 프리팹의 루트 게임 오브젝트에 Sorting Group 컴포넌트를 추가하십시오. 편집된 프리팹을 저장하면 프리팹의 모든 현재 및 미래 인스턴스도 Sorting Group 컴포넌트를 가집니다.
각 프리팹에는 동일한 Sorting Layer 및 Order in Layer 프로퍼티 설정을 가진 Sorting Group 컴포넌트가 있어야 합니다. 이로 인해 동일한 Sorting Layer에 있는 프리팹의 렌더러가 Render Queue에서 동일한 우선순위를 갖기 때문에 일관되지 않은 방식으로 렌더링될 수 있습니다.
이 문제를 방지하려면 각 프리팹의 Sorting Group 컴포넌트에 고유한 Order in Layer 값을 지정하십시오. Unity는 Order in Layer 값이 낮은 정렬 그룹을 먼저 렌더링하고, 값이 높은 정렬 그룹은 낮은 정렬 그룹과 겹치게 렌더링합니다. Sorting Layers의 편집 및 순서 변경에 대한 자세한 내용은 태그 및 레이어를 참조하십시오.
각 프리팹에는 각 캐릭터와 캐릭터의 파트를 올바르게 렌더링할 수 있도록 고유한 Order in Layer 값을 가진 Sorting Group 컴포넌트가 있습니다.
SortingGroup