반응형
벌레가 뜯어먹은 풀잎 표현
잎사귀에 구멍이 뚫려 있는 텍스쳐는 어떻게 표현을 할 수 있을까?
Alpha mask map을 사용하여 Transparent로 나타내면 해당 효과를 표현할 수 있을 것이다.
그러나 우리는 Transparent 머테리얼이 셰이더에서 높은 비용을 요구하는 것을 알고 있다.
그렇다면 Transparent재질이 아닌 다른 Opaque를 유지하면서 구멍을 표현할 수는 없을까?
알파 클리핑
알파 클리핑이란 무엇이고 어떻게 사용할 수 있을까?
빌트인 셰이더에는 컷아웃 셰이더가 있다. 컷아웃 셰이더는 정말 투명한 영역과 완전 불투명한 영역이 섞여 있는 재질을 나타낼 때 사용한다. 예를 들면 위와 같은 나뭇잎 표현이나 찢어진 옷감 같은 표현을 나타낼 때 사용한다.
하지만 HDRP의 경우 컷아웃 셰이더가 별도의 셰이더 형태로 존재하지 않는다. 대신 알파 클리핑(Alpha clipping)이라는 영역이 기본 셰이더에 별도로 존재한다.
알파 클리핑에는 Threshold(임계값)이라는 필드가 별도로 존재해서, 이 값보다 낮은 픽셀은 렌더링에서 제외시킨다. 따라서 해당 영역이 투명하게 처리되게 되고, 컷아웃 셰이더와 같은 효과를 낸다.
결과물
반응형
'유니티 > 그래픽스' 카테고리의 다른 글
[Unity] 셰이더 코드 (3) - SubShader 작성 방법 (0) | 2024.01.19 |
---|---|
[Unity] 물 표현 - HDRP Water (0) | 2023.12.18 |
[Unity] 메탈릭과 스무드니스 정리 (Metallic & Smoothness) (0) | 2023.10.27 |
[Unity] 커스텀 포스트프로세싱 (Custom Post-Processing) (0) | 2023.10.20 |
[Unity] NVIDIA 딥러닝 슈퍼 샘플링 (DLSS) (0) | 2023.09.28 |