머티리얼은 고급 셰이딩 언어(High Level Shading Language, HLSL)라는 전문 코딩 언어를 사용하여 생성됩니다. ...중략... 언리얼 엔진 5(UE5) 안에서 머티리얼을 만드는 데 사용되는 머티리얼 표현식 노드에는 작은 HLSL 코드 스니펫이 들어 있습니다.
메인 머티리얼 노드의 입력은 UE5 머티리얼 그래프의 종착역입니다. 메인 머티리얼 노드 입력에 어떤 머티리얼 표현식 노드 조합이 연결되는지에 따라, 레벨에서 컴파일 및 사용하면 최종 머티리얼의 전반적인 외관이 결정됩니다. - 언리얼 엔진 공식 문서(dev.epicgames.com/documentation)
입력 및 머티리얼 프로퍼티
디테일 패널에서 특정 머티리얼 프로퍼티를 변경하면, 메인 머티리얼 노드의 일부 입력이 활성화/비활성화로 변경된다. 머티리얼에 필요한 입력(사용자가 원하는 입력)이 비활성화되었다면, 아래의 프로퍼티 중 하나 이상이 잘못 설정되었기 때문이다.
블렌드 모드(Blend Mode) - 머티리얼이 배경의 픽셀과 블렌드되는 방법을 정의한다.
셰이딩 모델(Shading Model) - 머티리얼의 표면에서 빛이 계산되는 방법을 정의한다.
머티리얼 도메인(Material Domain) - 머티리얼의 용도를 결정한다. 예를 들어 해당 머티리얼이 표면의 일부인지, 라이트 함수인지, 포스트 프로세스 머티리얼인지 결정하게 된다.
베이스 컬러
UE Logo Texture로부터 색을 더해 Base Color에 입력하는 머티리얼. 검정 부분의 값이 0이기 때문에 최종 렌더링되는 모습이 좌측과 같은 결과를 낸다.
베이스 컬러는 머티리얼의 전반적인 색을 정의한다.
원칙적으로 베이스 컬러는 스페큘러 리플렉션 / 하이라이트 없이 표면에 반사되어 나오는 빛의 디퓨즈를 나타낸다.
현실에 비유하면 베이스 컬러 텍스처는 편광 필터를 사용한 촬영의 결과물과 같다. 편광은 평행 상태에서 비금속의 스페큘러를 제거한다.
편광 필터를 적용하면 특정 방향의 빛만 필터를 투과할 수 있다. 반사가 사라진 모습과 채도와 대비가 올라간 것을 확인할 수 있다. 출처 : https://techtree.tistory.com/78
메탈릭
표면이 '금속처럼 보이는 정도'를 제어한다.
범위는 0과 1사이의 값이지만 대부분의 경우 0 또는 1로 이분법적으로 사용한다.
비금속 : 0
금속 : 1
순수한 금속이나 돌, 플라스틱과 같은 순수한 표면의 경우 이 값은 0 또한 1이며, 그 중간 값은 될 수 없다.
부식, 먼지, 녹이 슨 금속과 같은 혼합 표면을 만들 때는 0과 1사이의 값이 필요할 수 있다.
메탈릭 마스크를 사용하려면 텍스처의 값이 순수한 검은색 또는 순수한 흰색이어야 한다.
부식된 금속과 같은 혼합 표면을 만들 때는 그레이스케일 값만 사용한다.
스페큘러
표면에서 반사되는 빛의 양을 측정한다.
범위 : 0 ~ 1, 표면에서 반사되는 정도를 정의한다.
값 0 - 반사 없음
값 1 - 완전 반사
Default Value : 0.5, 약 4%의 반사도이다.
스페큘러가 0인 표면
러프니스
머티리얼의 표면의 거칠거나 부드러운 정도를 제어한다.
거친 재질에 반사된 빛은 부드러운 재질보다 여러 방향으로 퍼진다.
이 값은 리플렉션이 얼마나 희미하거나 선명한지(또는 스페큘러 하이라이트가 얼마나 퍼져 있거나 모여 있는지)를 제어한다.
러프니스의 정도에 따른 비교
부드러운 경우( 값 0 ) - 거울과 같이 반사됨
거친 경우( 값 1) - 분산 또는 무광 표면이 된다.
러프니스가 0인 표면
대부분의 표면은 거칠거나 부드러운 정도가 균일하지 않으므로, 러프니스는 흔히 오브젝트에 매핑해 표면에 물리적 베리에이션(물리적 다양성)을 더하는 프로퍼티이다.
러프니스 맵이 필요한 머티리얼의 예시 : 금속에 난 스크래치, 나무 바닥의 흠집, 플라스틱에 묻은 지문 등이 있다.