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
'프로그래밍 > Unity' 카테고리의 다른 글
Audio Clip 이펙트음 설정 관련 주의사항 (0) | 2015.07.06 |
---|---|
Unity에서 Transform을 이용하여 LocalPosition <-> Global position 벡터 크기를 변경하는 팁. (2) | 2015.06.04 |
TypeLoadException (0) | 2014.07.29 |
SendMessage() (0) | 2014.07.09 |
Unity 일정시간 후에 함수호출 (0) | 2014.07.02 |