텍스처 컬러(Texture Color) 페인팅 모드는 스태틱 메시 컴포넌트에 대해 생성된 메시 페인트 텍스처를 사용합니다. 이러한 텍스처를 메시에 정확히 표시하려면 MeshPaintTextureObject 머티리얼 표현식을 통해 머티리얼을 추가로 설정해야 하며, 스태틱 메시에는 메시 텍스처 컬러 페인팅에 적합한 UV 설정을 해야 합니다.
아래 섹션에서는 텍스처 컬러 페인팅에 적합하도록 머티리얼과 메시를 설정하는 방법을 보여줍니다.
텍스처 페인팅 머티리얼 설정하기
아래 섹션에 따라 MeshPaintTextureObject 및 MeshPaintTextureReplace 표현식을 사용하도록 머티리얼을 설정합니다.
텍스처 컬러링 및 메시 페인트 텍스처에 대한 자세한 내용은 메시 텍스처 컬러 페인팅 시작하기를 참조하세요.
머티리얼에 메시 페인트 텍스처 오브젝트 추가하기
MeshPaintTextureObject 머티리얼 표현식은 Texture Sample 노드와 함께 사용하여 스태틱 메시 컴포넌트의 생성된 메시 페인트 텍스처를 샘플링합니다. 이 머티리얼 로직은 기존 머티리얼에 통합할 수도 있고 독립적으로 사용할 수도 있습니다.
메시에 연결된 메시 페인트 텍스처를 샘플링하도록 머티리얼을 구성하는 절차는 다음과 같습니다.
- 새 머티리얼을 생성하거나 기존 머티리얼을 엽니다.
- 머티리얼 그래프를 우클릭하고 Texture Sample 노드를 추가합니다.
-
머티리얼 그래프를 우클릭하고 MeshPaintTextureObject 노드를 추가합니다. 이 노드를 Texture Sample 노드의 Tex(Texture) 입력에 연결합니다.
-
Texture Sample 노드에서 UVs 필드를 스태틱 메시의 메시 페인트 텍스처 좌표 인덱스(Mesh Paint Texture Coordinate Index) 또는 스태틱 메시 컴포넌트의 오버라이드된 메시 페인트 텍스처 좌표 인덱스(Overridden Mesh Paint Texture Coordinate Index) 에 일치하도록 설정합니다.
설정 방법에 대한 자세한 내용은 아래의 '텍스처 컬러 페인팅용 메시 설정하기' 섹션을 참조하세요.
머티리얼 그래프에서 이 부분의 설정이 완료되면 Texture Sample 노드의 RGB 출력을 메인 머티리얼 노드의 베이스 컬러(Base Color) 입력에 연결할 수 있습니다. 이 구성은 메시의 머티리얼에 대한 메시 페인트 텍스처만 사용합니다.
아니면 이 워크플로를 메시와 함께 사용되는 기존 머티리얼에 통합하는 경우, 메인 머티리얼 노드의 베이스 컬러 입력에 머티리얼 로직을 연결하여 Multiply 를 사용할 수 있습니다. 이 구성에서는 메시 페인트 텍스처를 사용하여 기본 베이스 머티리얼의 페인팅된 영역에 색조를 입힙니다.
이 구성은 다음과 같은 모습입니다.
메시 페인트 텍스처 머티리얼용 예비 로직 설정하기
메시 페인트 텍스처가 없는 메시에 머티리얼을 적용하거나 플랫폼이 메시 페인트 텍스처에 필요한 버추얼 텍스처를 지원하지 않는 경우가 있습니다. 이러한 경우 제대로 렌더링하기 위해 머티리얼용 예비 옵션이 있어야 합니다.
메시 페인트 텍스처를 샘플링할 수 없는 경우, 대체 경로를 사용하도록 머티리얼 그래프에 로직을 설정하는 절차는 다음과 같습니다.
- 머티리얼 그래프를 우클릭하고 MeshPaintTextureReplace 노드를 추가합니다.
-
MeshPaintTextureObject 노드가 있는 Texture Sample 노드에서 RGB 출력을 드래그하여 MeshPaintTextureReplace 노드의 MeshPaintTexture 입력에 연결합니다.
-
MeshPaintTextureReplace의 디폴트(Default) 입력에서 MeshPaintTexture 경로 대신 사용할 다른 머티리얼 로직을 연결할 수 있습니다. 간편하게 Texture Sample 노드나 ConstantVector3을 사용하여 컬러를 설정할 수 있습니다.
머티리얼 그래프에서 이 부분의 설정이 완료되면 MeshPaintTextureReplace 노드의 출력 핀을 메인 머티리얼 노드의 베이스 컬러 입력에 연결할 수 있습니다. 여기에서는 두 가지 간단한 경로가 제공되는데, 이 머티리얼을 사용하는 메시에 메시 페인트 텍스처가 있으면 그 경로를 사용하고, 그렇지 않으면 디폴트 경로를 사용합니다.
아니면 알베도 출력을 디폴트 입력에 연결된 변경되지 않은 경로와 Multiply 노드가 있는 MeshPaintTextureObject 로직을 사용하는 MeshPaintTexture 경로로 분할하여 기존 머티리얼 그래프에 이 로직을 통합할 수 있습니다.
이 구성은 다음과 같은 모습입니다.
아래는 위에 표시된 두 가지 머티리얼 그래프의 예시로, 같은 머티리얼을 사용하지만 각각 메시 페인트 텍스처가 있는 메시와 없는 메시를 보여줍니다.
![]() |
![]() |
| 가장 기본적인 MeshPaintTextureReplace입니다. 왼쪽은 MeshPaintTexture 경로이고, 오른쪽은 디폴트 경로입니다. | 디폴트 텍스처로 기존 머티리얼에 통합된 MeshPaintTextureReplace 구성입니다. 왼쪽은 MeshPaintTexture 경로이고, 오른쪽은 디폴트 경로입니다. |
텍스처 페인팅 머티리얼용 메시 설정하기
아래 섹션을 따라 메시 페인트 텍스처로 텍스처 컬러 페인팅을 올바르게 사용하도록 메시를 설정합니다. 이 섹션에서는 적합한 UV를 설정하고 할당하는 방법과 텍스처 컬러 페인팅에 적합하도록 메시의 머티리얼에 적용하는 방법을 자세하게 살펴봅니다.
스태틱 메시 요구 사항
MeshPaintTextureObject 머티리얼 표현식을 사용하는 Texture Sample 노드의 UVs 값은 스태틱 메시의 메시 페인트 텍스처 좌표 인덱스 와 일치해야 합니다. 그래야 생성된 메시 페인트 텍스처에 페인팅할 때 머티리얼이 올바른 스태틱 메시의 UV를 사용할 수 있습니다.
MeshPaintTextureObject 머티리얼 표현식에 대한 자세한 내용은 위의 '텍스처 페인팅 머티리얼 설정하기' 섹션을 참조하세요.
메시 UV 검사하기
텍스처 컬러 페인팅과 함께 사용할 메시의 UV를 검사하는 방법은 다음과 같습니다.
- 콘텐츠 브라우저(Content Browser)에서 스태틱 메시 에셋을 엽니다.
-
스태틱 메시 에디터 툴바의 UV 드롭다운에서 사용할 수 있는 UV 채널을 확인합니다. 목록에서 UV 채널을 하나 선택하여 검사합니다.
UV가 텍스처 컬러 페인팅에 적합한지 확인할 때, 오버랩되거나 타일링되거나 반복되는 UV가 있는지 확인해야 합니다. 그런 UV가 있다면, 각 부분의 지오메트리가 고유 ID를 지니도록 UV 차트를 배치하는 UV 채널이 있어야 합니다.
언리얼 엔진에 포함된 아래 큐브(Cube) 셰이프의 UV를 예시로 살펴보겠습니다.
- UV 채널 0(UV Channel 0)의 페이스가 서로 오버랩되어 있습니다. 큐브의 각 면이 서로 위에 놓여 있고 UV 스페이스 전체를 채우고 있습니다.
- UV 채널 1(UV Channel 1)은 스태틱 메시 에디터에서 생성되어 UV 차트가 다른 차트와 오버랩되지 않고 큐브의 여섯 면이 모두 UV 스페이스 내에서 고유한 자리를 차지하고 있습니다.
![]() |
![]() |
| 텍스처 컬러 페인팅에 적합하지 않은 UV입니다. | 텍스처 컬러 페인팅에 적합한 UV입니다. |
아래에서는 이러한 UV가 왜 적합한지 아닌지 볼 수 있도록, 오버랩되거나 반복되거나 타일링된 UV가 있는 메시를 페인팅했을 때의 결과와 메시의 각 페이스에 고유한 ID가 있는 메시에 페인팅했을 때의 결과를 비교합니다.
![]() |
![]() |
| 텍스처 컬러 페인팅에 적합하지 않은 UV의 결과입니다. | 텍스처 컬러 페인팅에 적합한 UV의 결과입니다. |
텍스처 컬러 페인팅용 UV 생성하기
스태틱 메시 에디터에서 새로운 UV 세트를 생성하는 방법은 다음과 같습니다.
- 디테일(Details) 패널에서 LOD 0 카테고리로 이동하여 빌드 세팅(Build Settings) 에 대한 옵션을 펼칩니다.
-
라이트맵 UV 생성(Generate Lightmap UVs) 옆의 체크박스에 체크합니다.
-
다음은 UV 생성 시 메시에 도움이 될 수 있는 몇 가지 기타 옵션 세팅입니다.
- 최소 라이트맵 해상도(Min Lightmap Resolution) 는 UV의 타깃 해상도를 설정합니다. 이 해상도는 사용할 수 있는 UV 스페이스에 배치된 UV 차트 사이의 간격을 설정합니다. 예를 들어, 해상도가 64면 256보다 UV 차트 사이에 공간이 더 많이 남는데, 이는 UV 차트를 더 빽빽하게 채울 수 있고 일부 차트의 크기를 더 크게 조정할 수 있다는 뜻입니다.
- 소스 라이트맵 인덱스(Source Lightmap Index) 는 이 UV 채널을 사용하여 UV를 생성합니다. 두 개 이상의 UV가 있는 메시도 있는데, 그런 경우 새로운 UV를 생성하는 데 가장 적합한 UV를 선택할 수 있습니다. 대부분은 UV0이 새로운 UV를 생성하기에 가장 좋은 후보입니다.
-
대상 라이트맵 인덱스(Destination Lightmap Index) 를 사용하여 라이트맵 UV를 생성할 값(UV 채널)을 설정합니다.
이렇게 하면 메시용으로 이미 생성된 UV 채널에 영향을 주지 않도록 사용할 수 있는 다음 UV 채널 슬롯이 자동으로 설정됩니다. 메시의 필요에 따라 이 값을 사용해도 되고 이 설정을 변경해도 됩니다.
- 변경사항 적용(Apply Changes) 을 클릭합니다.
스태틱 메시 에디터 툴바에서 UVs 드롭다운을 사용하여 적용된 결과를 확인할 수 있습니다. 드롭다운에서 확인하려는 UV 채널을 선택하면 됩니다.
텍스처 컬러 페인팅용 UV 설정하기
텍스처 컬러 페인팅에 사용할 UV를 설정하는 방법은 다음과 같습니다.
- 디테일 패널의 일반 세팅(General Settings) 카테고리로 이동합니다.
-
메시 페인트 텍스처 좌표 인덱스 텍스트 필드에 메시 텍스처 페인팅에 사용하려는 UV 채널과 일치하는 숫자 를 입력합니다. 예를 들어, UV 채널 0이면 0, UV 채널 1이면 1과 같은 식으로 입력합니다.
이 좌표 인덱스는 MeshPaintTextureObject 표현식을 사용하여 Texture Sample 노드의 UVs 입력에 설정되어야 제대로 활용할 수 있으며, 시작하는 방법은 위의 텍스처 페인팅 머티리얼 설정하기 섹션을 참조하세요.
UV와 관련된 것으로 보이는 페인팅 불일치를 발견하면 MeshPaintTextureObject 가 있는 Texture Sample 노드와 메시 페인트 텍스처 좌표 인덱스 가 같은 UV 좌표를 사용하는지 확인하세요.





