UITexture의 모양 변형하기 ( 둥근 라운드형 )

2015. 1. 30. 10:38프로그래밍/Unity

반응형
SMALL


요즘엔 어플에서 페이스북이나 다른 URL 을 통해 사진정보를 받아와서 보여주는 경우가 허다하다.
그럴 때 사진정보는 대부분 NGUI의 UITexture를 이용하여 뿌려주게 되는데,
이 때 사진의 기본 모양은 반듯한 사각형이다.

이 모양을 다른 모양으로 바꿔보고 싶은 경우가 생길 것이다. (때로는 받아오지 않은 이미지라도)
이번에는 모서리를 둥근 모양으로 바꿔보자.
이를 응용하면 어떤 모양이든 변경할 수 있을 것이라는 것을 예측할 수 있다.

일단 프로젝트에 NGUI와 다음 파일을 준비해둔다.




1. 압축파일 안에 AlphaMask 쉐이더에 Mask Tex 에 MaskTexture를 넣어준다.




2. 압축파일 안에 materialAlphaMask 의 shader 설정은 Sprites -> AlphaMask로 설정해준다. 



3. 설정했으면 NGUI로 UITexture 를 하나 생성한 후, 텍스쳐의 material을 2번의 materialAlphaMask로 설정해준다 

(여기까지만 해도 쉐이더의 모양이 변하여 나타나는 것을 확인할 수 있다.)




이런 결과가 나타났다!!


예상하겠지만, 압축 파일안의 MaskTexture 이미지를 보라.



AlphaMask에 설정한 이 이미지의 빨간색이 있는 모양대로 사진을 투명화 시켰음을 알 수 있다.

쉐이더 프로그래밍을 더 깊이 알면 좋겠지만, 이렇게 간단한 쉐이더 응용만으로도 충분할 때가 많다. 

(내가 하고 싶은건 다른 사람도 하고 싶은 것이고, 즉 누군가 이미 구현해 두었을 가능성이 높다)


자, 이제 마스크 이미지를 별, 꽃, 회사마크 등등등 마음껏 변형시켜보라...



유니티 쉐이더는 생각보다 어렵지 않다. 어렵다고 기피하지 말고, 부딪혀보면 생각보다 작은 노력으로 큰 이펙트효과를 볼 수 있을 것이다.

  





반응형
LIST