카드겜을 만들 때 일러스트가 카드 테두리, 영웅 테두리 바깥으로 삐져나오지 않도록 스프라이트 마스크를 썼습니다
하지만 아래 두 사례처럼 스프라이트 마스크를 씌운 영역에
스프라이트 랜더러를 가진 다른 오브젝트의 스프라이트가 겹친다면 그 부분이 출력되어 보이는 문제가 발생하였습니다.


여러 시행착오를 거쳤지만 해결 방법은 아주 간단했습니다.

스프라이트 마스크를 씌운 오브젝트 혹은 그 부모 오브젝트의 인스펙터에서
Add Component > Sorting Group 을 추가해주면
마스크가 해당 Sorting Group의 설정값에 따라 자식 오브젝트들에게만 영향을 미치도록 합니다.
위 스샷과 같이 설정해주면


아주 간단히 스프라이트 마스크가 다른 오브젝트의 스프라이트를 출력하는 문제를 해결할 수 있습니다.
https://docs.unity3d.com/kr/2021.3/Manual/class-SpriteMask.html
스프라이트 마스크 - Unity 매뉴얼
스프라이트 마스크(Sprite Masks)는 스프라이트 또는 스프라이트 그룹을 숨기거나 보여주는 데 사용됩니다. 스프라이트 마스크는 Sprite Renderer 컴포넌트를 사용하는 오브젝트에만 영향을 미칩니다.
docs.unity3d.com
'Unity 에러 노트' 카테고리의 다른 글
| 매뉴얼에서 알려주지 않은 코루틴 WaitForSeconds()의 매개변수 t에 대해 (0) | 2024.04.15 |
|---|---|
| 유니티) 갤럭시 s24 시리즈와의 앱 호환성 문제 (0) | 2024.03.12 |
| Edge Collider 2D 스크립팅 툴팁 오기 (0) | 2024.03.10 |
| 인스펙터에 스크립트 활성/비활성 체크 박스 사라짐 (0) | 2023.10.12 |
| Unity - Nav Mesh Agent 움직임 개선 (0) | 2023.04.17 |