머티리얼 은 고급 셰이딩 언어 (High Level Shading Language, HLSL)라는 전문 코딩 언어를 사용하여 생성됩니다. HLSL을 통해 머티리얼이 그래픽 하드웨어에 직접 인스트럭션을 전송할 수 있으므로 아티스트와 코더는 화면에 표시되는 내용을 원활하게 제어할 수 있게 됩니다. 언리얼 엔진 5(UE5) 안에서 머티리얼을 만드는 데 사용되는 머티리얼 표현식 노드에는 작은 HLSL 코드 스니펫이 들어 있습니다.
메인 머티리얼 노드 의 입력은 UE5 머티리얼 그래프의 종착역입니다. 메인 머티리얼 노드 입력에 어떤 머티리얼 표현식 노드 조합이 연결되는지에 따라, 레벨에서 컴파일 및 사용하면 최종 머티리얼의 전반적인 외관이 결정됩니다.

메인 머티리얼 노드의 디폴트 입력.
머티리얼 입력
메인 머티리얼 노드의 각 입력 은 머티리얼의 외관 및 표면 프로퍼티의 단일한 고유 특성을 정의합니다. 예를 들어 베이스 컬러(Base Color) 입력에 Constant3Vector 를 연결하고 값을 (1,0,0)으로 지정하면 머티리얼을 빨간색으로 만들 수 있습니다.

이 머티리얼 그래프는 오직 머티리얼의 단일한 특성인 베이스 컬러만 명시적으로 정의합니다.
그러나 머티리얼의 전반적인 외관은 메인 머티리얼 노드의 활성화된 모든 입력이 합쳐진 집약적인 결과입니다. 메인 머티리얼 노드의 활성화된 입력 핀은 흰색이며, 비활성화된 입력은 회색으로 처리됩니다.

그래프의 머티리얼 표현식에서 데이터를 전혀 받지 않는 입력은 단순히 디폴트값으로 되돌아갑니다. 예를 들어 메탈릭(Metallic), 스페큘러(Specular) 또는 러프니스(Roughness)에 연결된 것이 전혀 없더라도, 이러한 프로퍼티는 여전히 머티리얼의 외관에 영향을 미칩니다.

- 메탈릭 디폴트값은 0입니다(비금속).
- 스페큘러 디폴트값은 0.5입니다.
- 러프니스 디폴트값은 0.5입니다.
따라서 머티리얼의 메탈릭, 스페큘러, 러프니스에 이러한 값을 연결할 경우 그 머티리얼의 외관은 이전에 보여준 것과 정확히 동일합니다.



Slider: 메인 머티리얼 노드에 디폴트값을 연결할 경우 프리뷰 렌더는 변경되지 않는다는 점에 유의하시기 바랍니다.
값을 변경하면 머티리얼의 외관과 표면 프로퍼티를 바꿀 수 있습니다. 세 번째 이미지에서는 러프니스 값이 0.5에서 0.07로 변경되어 머티리얼의 광택이 강해집니다. Constant3Vector 의 값을 (0,0,1) 로 변경하면 베이스 컬러가 빨간색이 아닌 파란색으로 바뀝니다.
머티리얼 입력 이해
UE5는 머티리얼에 물리 기반 렌더링 (Physically Based Rendering, PBR) 워크플로를 사용합니다. 이는 머티리얼이 현실에서 표면이 빛과 상호작용하는 방식을 밀접하게 모방한다는 것을 의미합니다. 머티리얼을 효과적으로 생성하려면 각 입력이 최종 머티리얼에 정확히 어떤 영향을 미치는지 이해하는 것이 중요합니다. 이 두 페이지는 언리얼 엔진 5의 PBR 머티리얼 워크플로에 대한 기본 정보를 제공합니다.
- PBR 워크플로 내 머티리얼 생성에 대한 모범 사례를 알아보려면 물리 기반 머티리얼 개요 문서를 참조하세요.
- 메인 머티리얼 노드의 각 입력의 역할에 대한 예시와 설명은 머티리얼 입력 페이지를 참조하세요.
활성화된 입력 및 비활성화된 입력
메인 머티리얼 노드의 일부 입력 핀은 기본적으로 활성화되어 있는 반면, 기본적으로 비활성화된 입력 핀도 있습니다. 어떤 입력이 활성화되는지는 다음과 같은 디테일(Details) 패널 내 프로퍼티가 결정합니다.
- 머티리얼 도메인(Material Domain)
- 블렌드 모드(Blend Mode)
- 셰이딩 모델(Shading Model)

이러한 3가지 머티리얼 프로퍼티 중에서 수정하면 메인 머티리얼 노드에서 활성화 및 비활성화되는 입력을 변경할 수 있습니다.
가운데 예시의 경우, '블렌드 모드(Blend Mode)'를 불투명(Opaque) 에서 반투명(Translucent) 으로 변경하면 오파시티(Opacity) 및 리프랙션(Refraction) 입력이 활성화됩니다. 또한 반투명 머티리얼에 사용되지 않는 입력은 모두 비활성화됩니다.

맨 오른쪽의 경우, 클리어 코트 셰이딩 모델(Clear Coat Shading Model) 을 선택하면 클리어 코트(Clear Coat) 및 클리어 코트 러프니스 입력(Clear Coat Roughness)이 활성화됩니다.
디테일 패널의 이러한 프로퍼티에 액세스하려면 메인 머티리얼 노드를 선택해야 합니다. 메인 머티리얼 노드를 선택하려면 왼쪽 마우스 버튼 으로 클릭하거나 머티리얼 그래프 배경에서 아무 곳이나 클릭하면 됩니다.
비활성화된 입력에 연결된 노드는 무시됨
블렌드 모드 또는 셰이딩 모델 간에 전환할 때 일부 입력이 비활성화될 수 있습니다. 머티리얼 표현식은 비활성화된 입력에 연결된 상태로 유지되지만, 머티리얼을 컴파일할 때 머티리얼 표현식은 무시됩니다.
이 예시에서 상수 값은 오파시티에 연결되었습니다. 블렌드 모드가 반투명(Translucent) 에서 불투명(Opaque) 으로 변경되면서 오파시티 입력이 비활성화되었습니다.

상수 노드는 오파시티 입력에 연결된 상태로 유지되지만, 케이블과 입력은 입력이 비활성화되었음을 나타내는 회색으로 바뀝니다. 비활성화된 입력에 연결된 노드는 어떤 방식으로도 컴파일된 머티리얼에 영향을 미치지 않습니다.
메인 머티리얼 노드 디테일 패널 프로퍼티
머티리얼 에디터에서 메인 머티리얼 노드를 선택하면 디테일 패널에는 모든 편집가능 프로퍼티 목록이 표시되며, 이는 머티리얼을 어떻게 사용할 수 있는지와 연관됩니다.
위에서 확인했듯이 블렌드 모드 및 셰이딩 모델 과 같은 프로퍼티는 메인 머티리얼 노드에서 어떤 입력이 활성화되는지에 직접적으로 영향을 미칩니다. 다른 섹션에서는 머티리얼이 특정한 플랫폼 또는 렌더링 기능과 상호작용하는 방식을 수정할 수 있습니다.
메인 머티리얼 노드 디테일 패널 내 각 섹션의 역할을 간략히 분석해 보면 다음과 같습니다.

섹션 이름: | 설명 |
---|---|
피지컬 머티리얼 | Physical Material - 이 머티리얼에 사용되는 피지컬 머티리얼 타입을 지정할 수 있습니다. |
머티리얼 | Material - 머티리얼 편집 시 대부분의 시간을 보내는 곳입니다. 머티리얼 섹션에서는 머티리얼 도메인, 블렌드 모드, 셰이딩 모델과 함께 여러 가지 옵션을 변경할 수 있습니다. |
피지컬 머티리얼 마스크 | Physical Material Mask - 이 머티리얼에 사용할 피지컬 머티리얼 맵의 배열입니다. |
반투명 | Translucency - 이 머티리얼의 반투명 작동 방식을 조정할 수 있습니다. 머티리얼 블렌드 모드가 반투명으로 설정되었을 때만 편집 가능합니다. |
반투명 셀프 섀도잉 | Translucency Self Shadowing - 반투명 셀프 섀도잉의 룩과 작동 방식을 조정할 수 있습니다. 머티리얼 블렌드 모드가 반투명으로 설정되었을 때만 편집 가능합니다. |
사용 | Usage - 이 머티리얼이 어떤 타입의 오브젝트와 작업하도록 할지 설정합니다. 이 플래그는 보통 에디터에 의해 자동 설정됩니다. 그러나 이 머티리얼과 함께 사용할 특정 오브젝트 타입을 알고 있는 경우, 여기에서 활성화하여 추후 실수를 방지할 수 있습니다. |
모바일 | Mobile - 스마트폰과 같은 모바일 디바이스에서 사용 시 머티리얼의 작동 방식을 설정합니다. |
포워드 셰이딩 | Forward Shading - 포워드 셰이딩 렌더러 사용 시 머티리얼별로 오버라이드합니다. |
그룹 정렬 | Group Sorting - 머티리얼 내 파라미터 그룹의 순서를 변경할 수 있습니다. |
포스트 프로세스 머티리얼 | Post Process Material - 이 머티리얼이 포스트 프로세스와 톤 매핑에 대해 어떻게 작동하는지 정의합니다. 머티리얼 도메인이 포스트 프로세스로 설정된 경우에만 편집 가능합니다. |
리프랙션 | Refraction - 리프랙션 모드 및 리프랙션 깊이 바이어스를 변경하는 프로퍼티입니다. |
라이트매스 | Lightmass - 이 머티리얼과 라이트매스의 상호작용을 조정할 수 있습니다. |
프리뷰 | Previewing - 머티리얼 에디터 뷰포트에서 머티리얼을 미리 보는 데 사용되는 스태틱 메시를 변경합니다. |
임포트 세팅 | Import Settings - 선택한 임포트 데이터 타입 및 이 머티리얼과 사용하기 위한 선택 관련 옵션입니다. |
이러한 세팅에 대한 자세한 정보는 머티리얼 프로퍼티 페이지를 참조하세요.
메인 머티리얼 노드 사용하기
메인 머티리얼 노드의 입력은 머티리얼 그래프의 다른 머티리얼 표현식 또는 함수와 정확히 같은 방식으로 작동합니다.
머티리얼 표현식을 메인 머티리얼 노드의 입력에 연결하는 방법은 다음과 같습니다.
-
머티리얼 표현식의 출력 핀을 클릭하고 메인 머티리얼 노드의 입력 핀으로 드래그합니다.
-
초록색 체크 표시 아이콘이 나타나면 입력 핀에서 마우스 버튼 을 놓습니다.
머티리얼 그래프에 머티리얼 표현식과 함수를 배치하는 방법을 모를 경우 이 문서를 참조하세요.
머티리얼 적용 및 프리뷰
메인 머티리얼 노드는 UE5 머티리얼 그래프의 종착역입니다. 메인 머티리얼 노드의 입력에 연결하는 정보가 최종적으로 머티리얼의 외관을 결정합니다. 머티리얼 에디터 뷰포트의 프리뷰는 메인 머티리얼 노드에 머티리얼 표현식을 연결함에 따라 계속 업데이트되므로 변경 사항을 평가하고 원하는 결과가 도출되는지 확인할 수 있습니다.
머티리얼을 미리 보는 다양한 방법 및 레벨의 액터에 적용하는 방법에 대해 계속해서 읽어보시기 바랍니다.