본문 바로가기

유니티/그래픽스

[Unity] HDRP에서 기본 Material 사용법 (2)

반응형

HDRP에서 기본 Material 사용법 (1)에서 다룬 Surface Inputs를 제외한 나머지 Surface Options, Detail Inputs, Emission Inputs, Advanced Options에 대한 사용법을 기술하였다.


Surface Options

Surface Options이란?

이 항목에서는 머테리얼이 렌더링 되는 방식에 대한 옵션을 설정할 수 있다.

그중 HDRP Lit Shader에서 주요하게 사용되는 파라미터에 대해 나열해 보았다.


Surface Type

해당 머테리얼이 투명도를 지원하는지에 대한 항목이다.

Opaque는 빛이 관통하지 않는 단단한 머테리얼에 적합하며

Transparent는 빛이 관통하는 반투명 머테리얼을 표현할 때 사용한다.

 

다만 Transparent는 Opaque재질보다 훨씬 더 많은 리소스를 필요로 하므로 반드시 필요한 경우에만 사용해야 한다.

 

Transparent가 Opaque보다 리소스 소요가 더 큰 이유는 간단하게 설명하면 다음과 같다.

투명 재질은 Depth buffer로부터 렌더링 순서(depth-sorting)를 받아 순서대로 렌더링(order-dependent drawing)을 해야 한다. 이 과정에서 추가적인 카메라 패스를 실행해야 하기 때문에 Opaque에 비해 더 많은 비용을 요구하게 되는 것이다.


Cull Mode

컬링 할 면을 지정한다. 만약 Double Sided로 설정하면 양쪽면을 모두 컬링 한다.

필자의 경우 캐릭터의 옷을 렌더링 할 때 Double sided로 지정하여 옷감의 안쪽도 렌더링 하도록 설정한다.

 


Displacement Mode

머테리얼 표면의 높이를 어떻게 제어할 것인가에 대한 항목이다.

이 기능을 활성화하면 Height Map을 적용할 수 있는 칸이 생성된다.

Height Map

드롭다운을 펼쳐보면 None,  Vertex displacement, Pixel displacement로 나뉘는 것을 알 수 있다.

 

Vertex displacement은 Height map 정보를 정점(버텍스) 단위로 적용한다. 

같은 오브젝트라 할지라도 테셀레이션등을 통해 버텍스가 많은 오브젝트가 더 정교하게 나타내어질 것이다.

반면 Pixel displacement는 픽셀 단위로 Height map 정보를 적용한다.

따라서 Vertex displacement보다 더욱 세부적인 디테일을 나타낼 수 있다. 반면 렌더링에 필요한 비용은 Vertex displacement보다 더 클 것이다.


Detail Inputs

Detail Inputs란?

디테일 맵(Detail map)을 적용할 수 있는 옵션이다.

Detail map은 기존 Built-in의 디테일 맵과 같은 역할을 수행한다. 예를 들어, 캐릭터의 피부가 텍스쳐로 추가되었을 때 피부의 세밀한 모공처리나 주름등을 디테일 맵을 통해 나타낼 수 있다.

 

Mask map과 비슷한 원리로 Detail map은 하나의 텍스쳐에 여러개의 정보를 갖고 있다.

유니티 공식 문서 가이드

https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@15.0/manual/Mask-Map-and-Detail-Map.html

 

Mask and detail maps | High Definition RP | 15.0.3

Mask and detail maps The High Definition Render Pipeline (HDRP) uses channel-packed textures to store multiple Material maps in a single texture. Channel packing is efficient because it allows the renderer to sample up to four grayscale maps that use the s

docs.unity3d.com

위 문서 참고


Emission Inputs

Emission Inputs이란?

다른 파이프라인의 Emission과 마찬가지로 머테리얼에 발광효과를 추가하는 기능이다. 주로 포스트프로세싱의 Bloom효과 함께 사용되어 풍부한 빛 효과를 나타낸다.


Use Emission Intensity

이 체크박스를 활성화하면 이미션의 강도를 숫자로 지정할 수 있다. 대신 HDR컬러에서 LDR컬러로 바뀌게 된다. (사실 당연한 결과이다! HDR이 LDR에 밝기를 나타내는 값을 추가한 것과 마찬가지이기 때문이다) 좀 더 구체적인 이미션 강도를 지정할 필요가 있다면 이 체크박스를 사용하면 된다.

 

반응형