UV 채널은 스태틱 메시 내 데이터 세트로, 각 메시의 버텍스를 2D 스페이스 좌표에 매핑합니다. 이러한 매핑은 메시가 렌더링될 때 2D 텍스처가 3D 지오메트리를 어떻게 래핑할지 정의합니다.
UV 매핑은 일반적으로 스태틱 메시의 지오메트리를 생성하는 데 사용되는 것과 동일한 툴인 전용 모델링 툴에서 생성 및 관리됩니다. 하지만 스태틱 매시 에디터는 모델의 UV 채널을 사용한 작업이 가능하도록 몇 가지 기능을 제공합니다.
언리얼 엔진에서 UV 채널의 주요 목적은 두 가지입니다.
머티리얼 내 텍스처 좌표: 텍스처 맵을 샘플링하여 스태틱 메시의 표면에 적용하는 머티리얼을 생성하는 경우 텍스처 좌표 또는 Texcoord 노드를 사용하여 UV 채널을 지정할 수 있습니다. 머티리얼은 선택된 UV 채널에 포함된 2D 좌표와 3D 버텍스 위치 간 매핑을 사용하여 3D 모델에서 각 트라이앵글을 셰이딩할 때 어떤 텍스처 영역을 사용해야 할지 결정합니다.
예를 들어 이 단순한 평면 스태틱 메시의 UV 채널 0(다음 이미지의 오른쪽 위에 표시됨)은 메시의 두 트라이앵글인 A와 B를 텍스처 공간으로 매핑하는 가장 간단한 방법을 보여줍니다. TexCoord 노드의 좌표 인덱스(Coordinate Index) 프로퍼티에 의해 설정된 이 UV 채널을 사용하는 경우 머티리얼은 텍스처의 전체 너비와 높이를 평면에 적용합니다.
반면에 아래 이미지에서는 UV 채널 1이 트라이앵글과 UV 텍스처 공간 간의 매핑을 회전하고 왜곡하는 모습을 보여줍니다. 동일한 이미지 텍스처가 스태틱 메시에 적용될 때는 스태틱 메시의 각 부분에 적용되는 텍스처의 부분을 변경합니다.
UV 매핑에서 트라이앵글은 오버랩할 수 있습니다. 오버랩이란 텍스처의 동일한 부분이 3D 스태틱 메시 지오메트리의 여러 부분에 적용된다는 의미입니다.
'UV 채널'의 U는 텍스처의 가로 축을, V는 세로 축을 가리킵니다. 텍스처 좌표는 보통 0~1 사이로 유지되며 (0,0)은 텍스처의 왼쪽 하단을 나타내고 (1,1)은 오른쪽 상단을 나타냅니다. 하지만 이것이 항상 맞는 것은 아닙니다. 기본적으로 U 또는 V 값이 1을 초과하거나 0 미만일 경우, 머티리얼은 텍스처의 다른 면을 '래핑'하게 됩니다. 예를 들어 V 값 1.25는 보통 0.25로 취급됩니다. 하지만 머티리얼에서 이 값의 범위를 제한하여 최솟값을 0, 최댓값을 1로 제한할 수도 있습니다.
라이트 맵: UV 채널은 라이트 맵을 저장하고 적용하는 데도 사용됩니다. 라이트 맵은 스태틱 메시의 미리 계산된 라이팅 정보를 저장하는 특수한 텍스처입니다. '모빌리티(Mobility)' 세팅이 '스테이셔너리(Stationary)' 또는 '스태틱(Static)'으로 설정된 라이트가 레벨에 있고 레벨에 해당 라이팅을 빌드하면 라이트매스 툴은 간접광 및 스태틱 라이트의 직접광을 라이트 맵 텍스처에 저장하고 UV 채널을 사용하여 스태틱 메시의 3D 지오메트리와 2D 텍스처 공간 간의 매핑을 결정합니다.
라이트 맵에 사용되는 UV 채널은 다음과 같은 특별한 규칙을 따라야 합니다. 오브젝트의 모든 부분은 서로 다른 양의 라이팅을 받기 때문에 메시 트라이앵글은 2D 텍스처 공간에서 서로 오버랩될 수 없습니다. 각 트라이앵글은 텍스처에서 각자의 영역을 커버합니다. 또한 모든 UV 좌표 값은 반드시 0~1 사이에 있어야 합니다. 라이트 맵 텍스처는 일반 텍스처 매핑과 동일한 방식으로 '래핑'하는 것이 불가능합니다.
이러한 이유로 인해 라이트 맵 UV는 보통 더 단순한 UV에서 생성되거나 패킹 됩니다.
예를 들어 이 기둥의 텍스처 매핑 UV 채널은 각 4면의 지오메트리를 텍스처의 동일 오버랩 영역에 매핑합니다. 이 UV 채널을 사용하여 지오메트리에 텍스처를 적용하면 각 면이 텍스처의 동일한 부분을 사용하게 됩니다.
하지만 오브젝트의 라이트 맵 UV에서는 각 면이 제각기 2D 공간의 고유한 영역을 커버해야 합니다.
라이트 맵 UV와 이를 생성하는 방법에 대한 자세한 내용은 언리얼 엔진의 라이트매핑 이해하기 및 라이트 맵 UV 생성하기를 참고하세요.
언리얼 엔진의 각 스태틱 메시는 최대 7개의 UV 채널을 가질 수 있으므로 서로 다른 머티리얼 또는 단일 머티리얼 내의 서로 다른 샘플링 노드에 대해 텍스처를 래핑하는 다양한 방법을 구성할 수 있습니다.
스태틱 메시 에디터(Static Mesh Editor) UI에서는 UV 채널을 나열, 시각화 및 제거할 수 있습니다.
스태틱 메시 에디터에서 열린 스태틱 메시 에셋이 있는 경우 툴바의 UV 버튼으로 현재 스태틱 메시에서 사용 중인 UV 채널을 모두 나열할 수 있습니다.
목록에서 아무 UV 채널이나 선택하면 뷰포트에서 메시의 트라이앵글이 2D 텍스처 공간에 오버레이로 매핑되는 것이 시각화됩니다.
목록 상단의 없음(None) 을 선택하면 UV 오버레이가 숨겨집니다.
목록에서 선택한 채널을 제거할 수도 있습니다. 각 UV 채널은 각 버텍스의 텍스처 좌표를 스태틱 메시의 일부로 저장하므로 사용하지 않는 매핑을 삭제하면 런타임 메모리를 어느 정도 절약할 수 있습니다.
목록에 있는 UV 채널 중 삭제된 채널 뒤에 있는 다른 모든 UV 채널은 한 칸씩 위로 올라가 제거된 채널로 인한 공백을 채웁니다.