튜토리얼을 시작하기 전에 핵심 머티리얼 개념, 머티리얼 에디터 사용자 가이드 및 머티리얼 에디터 UI에 익숙해지는 것이 좋습니다. 이들 페이지에서는 머티리얼 인스턴스 생성 및 머티리얼 에디터에 대한 배경 지식을 제공합니다.
베이스 컬러(Base Color), 메탈릭(Metallic), 스페큘러(Specular) 및 러프니스(Roughness) 는 머티리얼이 UEFN에서 작동하는 방식의 토대를 이룹니다. 머티리얼의 룩과 비헤이비어 방식에 대해 더 잘 이해하려면 물리 기반 머티리얼을 참고하세요. 이 페이지에서는 MainMaterialNode 또는 머티리얼 루트 노드의 다양한 입력이 어떻게 작동하고 서로 상호작용하는지 설명합니다.
MainMaterialNode에서 입력 핀을 사용하는 방법을 살펴보려면 머티리얼 입력 을 참고하세요. 이 페이지에서는 다양한 핀이 특정 타입의 표면을 생성하는 데 어떻게 도움이 되는지 설명합니다.
머티리얼 프로퍼티
머티리얼은 표면의 프로퍼티를 정의하며, 셰이딩 모델은 표면이 라이트와 상호작용하는 방식을 정의합니다.
대부분의 경우 머티리얼 에디터의 디테일 패널에 표시되는 머티리얼 프로퍼티는 메시에 대한 머티리얼을 생성할 때는 변경되지 않습니다. UI, 포스트 프로세싱 또는 라이팅을 통해 플레이어와 상호작용하는 머티리얼을 생성할 때는 머티리얼 도메인 세팅을 변경합니다. 다음은 시작할 때 사용하는 디폴트 세팅입니다.
| 프로퍼티 | 세팅 | 설명 |
|---|---|---|
| 머티리얼 도메인(Material Domain) | Surface | 머티리얼이 사용되는 방식을 정의합니다. 표면 은 메시 표면에서 머티리얼이 사용되는 방식을 정의합니다. |
| 블렌드 모드(Blend Mode) | Masked | 머티리얼의 출력이 그 뒤에 있는 픽셀과 블렌딩되는 방식을 정의합니다. 마스크 적용 은 메시 위에 마스크를 생성합니다. |
| 셰이딩 모델(Shading Model) | Default Lit | 머티리얼이 라이트와 상호작용하는 방식을 설정하여 표면 머티리얼이 최종 컬러를 만드는 방식을 정의합니다. 디폴트 릿 셰이딩은 모든 입체 메시에 적합합니다. |
머티리얼 생성에 좀더 익숙해지면 이러한 프로퍼티를 원하는 대로 조정하면서 머티리얼이 메시에서 상호작용하고 배치되는 방식을 변경해보세요.
속이 빈 메시 또는 양면 메시를 위한 머티리얼을 생성하는 경우 양면(Two Sided) 옵션을 체크하여 메시 뒷면에 2차 컬러를 생성할 수 있으며, 이는 식물의 잎사귀와 같이 얇은 머티리얼을 생성하는 데 적합합니다.
노드
UEFN은 머티리얼과 텍스처를 생성하거나 머티리얼 인스턴스로 변환하는 데 머티리얼 노드를 사용합니다. 따라서 머티리얼에서 설정한 파라미터는 장치, 포스트 프로세싱, 라이팅, UI 등에서 참조될 수 있습니다. 머티리얼 에디터는 추가 머티리얼 노드를 입력 핀으로 가져오는 MainMaterialNode 와 함께 열립니다. 머티리얼 노드에 값을 할당하는 것으로 에셋의 컬러, 에셋에서 컬러가 표현되는 방식, 에셋에서 텍스처가 작동하는 방식을 정의하게 됩니다.
선택한 머티리얼 노드에 따라 머티리얼의 텍스처와 UV를 사용하여 깜박이는 조명이나 잎사귀 사이로 불어오는 바람과 같은 흥미로운 이펙트를 생성할 수 있습니다.
메인 머티리얼 노드의 베이스 컬러 입력 을 사용하여 다른 노드의 기능을 확인해 보세요. MainMaterialNode는 Default Color 노드에서 플로트, 3Vector 또는 4Vector 값도 가져올 수 있습니다.
'뷰포트(Viewport)'에서 메시에 머티리얼 인스턴스를 드래그 앤 드롭합니다. '머티리얼 에디터' 창의 크기를 줄이면 컴파일할 필요 없이 메시 머티리얼 노드를 실시간으로 편집할 수 있습니다.
아래 표에는 가장 많이 사용되는 노드가 정리되어 있습니다. 노드 값을 수정하고 MainMaterialNode에 연결하여 해당 노드가 어떤 역할을 하는지 살펴보세요.
| 이미지 | 노드 이름 | 설명 |
|---|---|---|
![]() |
Constant3Vectorexpression | MainMaterialNode에 컬러를 추가합니다. Value 노드를 사용하여 'R', 'G', 'B', 'A' 입력에 개별 값을 할당할 수 있습니다. 'R', 'G' 및 'B' 입력은 다음과 같은 방향으로 변환됩니다.
상수 값에 대한 자세한 내용은 머티리얼 데이터 타입 을 참고하세요. 3 을 누른 상태에서 좌클릭 하여 '머티리얼 에디터'에 Default Color 노드를 추가합니다. 머티리얼 에디터에 Default Color 노드가 있는 경우 우클릭하여 Color Parameter 노드로 변경할 수 있습니다. |
![]() |
Constant 노드 | 머티리얼 노드 또는 머티리얼 어트리뷰트에 정의하는 값을 추가합니다. 이 노드를 다른 노드에 연결하여 값을 정의하거나, MainMaterialNode에 직접 연결하여 어트리뷰트에 대한 값을 정의합니다. 1 을 누른 상태에서 좌클릭 하여 머티리얼 에디터에 Value 노드를 추가합니다. |
![]() |
Scalar Parameter 노드 | 머티리얼 노드가 연결된 어트리뷰트에 대한 파라미터 값을 추가합니다. 팔레트(Palette) 패널에서 Scalar Parameter 노드를 찾습니다. |
![]() |
Interpolate 노드 | 'A', 'B', '알파(Alpha)' 입력에 개별 값을 추가하고 정보의 소스 사이를 보간합니다. Lerp 노드의 'A', 'B' 및 '알파' 입력에 'Color' 노드를 추가하고 Lerp 노드를 MainMaterialNode에 연결하여 RGB 값과 어트리뷰트 사이에 컬러 블렌드를 생성합니다. Lerp 노드는 다른 노드 타입에 연결하여 머티리얼 어트리뷰트 중 하나에 이펙트를 생성할 수도 있습니다. 팔레트 패널에서 Lerp 노드를 찾습니다. |
![]() |
Coordinate 노드 | 좌표에 컬러 값을 추가합니다. 하나 또는 두 개의 다른 어트리뷰트에 컬러 좌표를 추가합니다. 2 를 누른 상태에서 좌클릭 하여 '머티리얼 에디터'에 Coordinate 노드를 추가합니다. |
![]() |
MaterialExpressionConstant4Vector 노드 | 변하지 않는 일정한 컬러를 하나의 어트리뷰트에 연결할 수 있는 네 가지 컬러 입력에 추가하거나 'R', 'G', 'B' 및 '알파' 입력을 사용하여 여러 어트리뷰트에 분포시킵니다. 하나 또는 여러 어트리뷰트에 Constant 노드를 추가합니다. 4 를 누른 상태에서 좌클릭 하여 '머티리얼 에디터'에 Constant 노드를 추가합니다. |
![]() |
BumpOffset 노드 | 하이트맵의 좌표에 값을 추가하여 UV를 디스토션하는 방식으로 머티리얼에 뎁스 텍스처링을 생성합니다. BumpOffset 노드는 각 픽셀의 높이 정보를 사용하여 텍스처에 깊이를 추가합니다. 이 노드를 Texture Sample 노드와 함께 사용하여 텍스처 값과 외형을 원하는 대로 설정해보세요. 팔레트 패널에서 BumpOffset 노드와 Texture Sample 노드를 찾습니다. |
![]() |
Time 노드 | 에디터에 시간과 관련한 사항에 대해 쿼리하고, 게임 내 시간을 계산하고, 연결된 어트리뷰트에 대한 값을 제공합니다. Time 노드를 다른 머티리얼 노드에 연결하여 머티리얼 노드가 어트리뷰트에 미치는 영향에 대한 시간 제한을 정의합니다. 팔레트 패널에서 Time 노드를 찾습니다. |
![]() |
Hue Shift 노드 | 어트리뷰트에 연결되면 컬러 값 사이를 이동합니다. Hue Shift 노드와 Value 노드를 함께 사용하여 '색조 변화 퍼센티지(Hue Shift Percentage)'의 값을 정의하고 텍스처 노드를 연결하여 텍스처를 추가합니다. 팔레트 패널에서 Hue Shift 노드를 찾습니다. |
![]() |
Panner 노드 | 머티리얼 인스턴스에서 UV가 이동(패닝)하는 속도와 방향을 변경합니다. '좌표(Coordinate)'와 '속도(Speed)' 값을 선택합니다. Value 노드를 Panner에 추가로 연결하여 단일 어트리뷰트를 추가로 정의할 수 있습니다. 팔레트 패널에서 Panner 노드를 찾습니다. |
![]() |
VertexNormal World Position Offset 노드 | 버텍스를 랜덤 방향으로 이동시킵니다. VertexNormalWS 노드에 Value 노드를 연결하여 버텍스가 이동할 이동량에 값을 할당합니다. 팔레트 패널에서 Vertex Normal World Position Offset 노드를 찾습니다. |
![]() |
Noise 노드 | 연결된 머티리얼 어트리뷰트에 텍스처(노이즈)를 추가합니다. 특정 텍스처와 함께 사용하여 노이즈에 '패턴'을 추가하거나 원하는 텍스처를 생성할 수 있습니다. 다른 머티리얼 노드를 Noise 노드에 연결하여 머티리얼의 특정한 측면을 디스토션합니다. 팔레트 패널에서 Noise 노드를 찾습니다. |
![]() |
Multiply 노드 | 특정 어트리뷰트에서 노드의 이펙트를 곱할 수 있습니다. 다른 머티리얼 노드를 Multiply 노드에 연결하여 머티리얼 어트리뷰트 중 하나에 원하는 이펙트를 생성합니다. 예를 들어 Default Color 노드를 Multiply 노드에 연결한 다음 Multiply 노드에 값을 추가하고 Multiply 노드를 이미시브(Emissive) 입력에 연결하여 머티리얼로 라이트 이펙트를 생성합니다. |
![]() |
Mask 노드 | 어트리뷰트의 R(X) 또는 G(Y) 입력에 마스킹 이펙트를 추가합니다. |
![]() |
AppendVector | 데이터 채널을 함께 결합하여 원래보다 채널 수가 많은 벡터를 생성합니다. AppendVector는 입력 순서대로 작동하며, 입력 A가 항상 입력 B의 앞에 추가됩니다. |
![]() |
Step 노드 | Step 노드는 두 값을 비교해 다른 값에 대한 한 값의 에지를 지정하여 하나의 값에서 다른 값으로의 스텝을 생성하는 셰이더 함수입니다. 두 번째 컬러 값과 비교해 표시할 한 컬러 값의 정도를 결정하여 그레이디언트를 정의하는 데 사용할 수 있습니다. |
![]() |
TextureCoordinate 노드 | 노드에서 UV 텍스처 좌표를 2채널 벡터 값으로 출력하고, 이를 활용하여 머티리얼이 서로 다른 UV 채널을 사용하고, 타일링을 지정하고, 메시의 UV에서 작동할 수 있습니다. |
![]() |
Clamp 노드 | Clamp 노드는 값을 가져와 최솟값과 최댓값으로 정의된 특정 범위로 값을 제한합니다. |
![]() |
LinearGradient 노드 | UV 채널 0을 사용하여 사용되는 출력에 따라 U 또는 V 방향으로 선형 그레이디언트를 생성합니다. |
![]() |
ConstantBiasScale 노드 | 입력 값을 가져와 바이어스 값을 더한 다음 스케일링 인수로 곱한 결과를 출력합니다. |
![]() |
Ceil 노드 | Ceil은 값을 가져와 가장 가까운 정수로 반올림하고 결과를 출력하는 표현식입니다. 따라서 0.2가 Ceil에 입력되면 값을 1.0으로 올립니다. |
![]() |
Named ReRoute 노드 | 노드를 명명하고 머티리얼 노드 경로를 변경할 수 있습니다. 머티리얼 노드를 리라우팅하면 여러 머티리얼 노드를 스트링으로 묶은 다음 스트링의 끝 값을 베이스 컬러 를 만드는 데 사용된 머티리얼 노드에 연결하여 복잡한 텍스처와 UV를 만들 수 있습니다. |
머티리얼 그래프를 정리하는 방법을 알아보려면 언리얼 엔진 문서에서 머티리얼 그래프 정리하기를 참고하세요.
단축키를 사용하여 다음과 같은 머티리얼 노드를 엽니다.
Constant
- 키보드에서 1 을 누르고 클릭
Constant3Vector
- 키보드에서 3 을 누르고 클릭
Multiply
- 키보드에서 M 을 누르고 클릭
Linear Interpolate
- 키보드에서 L 을 누르고 클릭
노드와 값, 이펙트를 주려는 어트리뷰트를 사용하여 많이 실험해볼수록 커스텀 머티리얼과 텍스처를 더 능숙하게 생성할 수 있습니다. 값을 사용하는 방법을 이해하는 것이 머티리얼을 생성하는 핵심입니다. 임포트한 메시 또는 모델링 모드 를 사용하여 만든 메시에 생성한 머티리얼을 사용해보세요.
머티리얼과 텍스처를 시네마틱 시퀀스 장치와 함께 사용하여 메시에 커스텀 이펙트를 생성할 수도 있습니다.
새 머티리얼을 생성할 때는 머티리얼의 통계를 확인하세요. 하나의 머티리얼에 500개 이상의 인스트럭션이 있어서는 안 됩니다. 그렇지 않으면 데이터가 너무 많아 제대로 렌더링되지 않을 가능성이 높아집니다.

광택 머티리얼 제작하기, 이미시브 머티리얼 입력 사용하기 및 머티리얼에 투명도 사용하기를 참고하여 머티리얼 생성의 기본 사항을 알아보세요. 이러한 튜토리얼은 광택, 메탈릭 및 라이트 이펙트가 적용된 기본 머티리얼 및 불투명도가 낮은 머티리얼로 작업하는 방법을 다룹니다.





















