본문 바로가기
게임 개발(유니티)/공부사항

Lunar-Assault_Recon_ 공부사항 #1

by goraku97 2025. 10. 1.

Sprite Mask 사용법

해당 게임에서는 "Sprite Mask" 컴포넌트를 각각의 맵 프리팹의 컴포넌트로 삼아서

탄막 스프라이트들들의 표시 영역을 컷팅했음.

위 사진에서는 Stage1_Deep Sky, Upper atmosphere, Universe 프리팹에 컴포넌트를 할당

 

그리고 Custom Range에 체크를 한다음,  "Back ≤ 대상이 될 스프라이트 ≤ Front"

규칙에 따라서  각각의 Order in Layer 수치를 조절함

(해당 사진에서는 Back 을 0, Front를 4로 설정)

Alpha Cutoff 를 1로 해서 스프라이트의 마스크안, 밖을 지정

Sprite Mask 컴포넌트의 스프라이트의 알파값은 1이고, 현재 Alpha Cutoff 도 1이므로

"마스크 스프라이트의 해당 픽셀 알파 ≥ Alpha Cutoff " 이기 때문에 

"33_PixelSky_1920x1080" 은 마스크 안으로 결정됨.

(만약, "마스크 스프라이트의 해당 픽셀 알파 < Alpha Cutoff" 라면 마스크 바깥 으로 결정)

 

 

이렇게 설정한 후에, 탄막 오브젝트들의 스프라이트가, "마스트 안쪽"값인 곳에서만 보이게 설정.

아래의 그림과 같이 스프라이트들의 "Mask Interaction" 을 "Visible Inside Mask" 로 설정.

그리고 Order in Layer는 아까의 "Back ≤ 대상이 될 스프라이트 ≤ Front" 규칙에 따라서

" 0 ≤ 스프라이트 Order in Layer  ≤ 4 "  안에 들어가도록  Order in Layer를 적절히 설정.

Visible Inside Mask 는 안쪽 마스크로 설정된 곳에서만 보이고 Visible Outside Mask 는 바깥쪽 마스크로 설정된 곳에서만 보이게 하는 설정.

이렇게 해서 탄막이 배경을 벗어날 때 자연스럽게 사라지게 보이게 하게 만드는데 성공.