BlenderBlender 기초

UV 펼치기: 3D 물체에 그림을 입히는 원리

UV 펼치기는 3D 물체의 겉면을 종이 전개도처럼 펼쳐 그림을 붙이는 과정입니다. 원리와 솔기, 펼치기 방법을 쉽게 정리했습니다.

AZTechnology15분 읽기

한국어English

Blender 5.2 설명서의 원기둥 솔기와 펼친 UV 그림 (공식 사이트 화면 캡처)

기준: Blender 5.2 LTS 공식 매뉴얼(영어 화면, 기본 단축키)

3D 물체에 사진이나 그림을 입히려면 한 가지 문제를 풀어야 합니다. 그림은 평평한 2D인데 물체는 입체라는 점입니다. UV 펼치기(UV Unwrapping)는 3D 물체의 겉면을 종이 상자 전개도처럼 평평하게 펼쳐서, 그림의 어느 부분이 물체의 어느 면에 붙을지 정하는 과정입니다. 이 글에서는 UV라는 이름의 뜻, 상자 전개도로 보는 원리, 자르는 선인 솔기, Blender의 펼치기 방법 고르는 법, 늘어남(왜곡)을 확인하고 줄이는 법을 설명합니다.

그림을 펼쳐야 하는 이유

Blender에는 수식으로 무늬를 만드는 절차적 텍스처도 있습니다. 그런데 원하는 모습을 절차적 텍스처로 만들기 어렵거나 무늬가 고르지 않을 때는 이미지 텍스처가 필요합니다. 예를 들어 자동차의 흠집은 차체 전체에 무작위로 나는 것이 아니라 '말이 되는 몇 군데'에만 있어야 합니다. 이런 무늬는 그림으로 직접 그려서 정확한 자리에 붙여야 합니다.

정확한 자리에 붙이려면 "그림의 이 점은 물체의 이 점"이라는 짝을 정해 줘야 합니다. 이 짝의 목록이 UV 맵입니다. 상자, 구처럼 자동으로 그림을 씌우는 투영 방식도 있지만 단순한 모양에서만 잘 맞습니다. 복잡한 모양에는 UV 맵을 만들어야 합니다.

UV라는 이름의 뜻

3D 공간의 방향은 X, Y, Z로 부릅니다. 평평한 그림 위의 방향도 X, Y로 부르면 둘이 헷갈립니다. 그래서 그림 쪽 좌표는 U(가로)와 V(세로)라는 다른 글자를 씁니다. UV라는 이름은 지도의 축에서 왔고, 3D 공간의 X, Y와 혼동하지 않으려고 고른 글자입니다. 결국 UV 맵은 "3D 물체의 각 점이 그림 위 (U, V) 어디에 해당하는지"를 적어 둔 주소록입니다.

UV 맵의 점 하나는 메시(면으로 이루어진 3D 모양)의 점(Vertex, 꼭짓점) 하나에, UV 맵의 선은 메시의 선(Edge, 변)에, UV 맵의 면은 메시의 면에 대응합니다. 3D 모양이 평면 위에 '그림자처럼' 한 번 더 그려진 것입니다.

상자 전개도로 보는 원리

종이 상자를 가위로 모서리를 따라 잘라 탁자 위에 평평하게 펼친다고 생각해 보세요. 탁자를 내려다볼 때 좌우가 U, 위아래가 V입니다. 이제 펼친 상자를 포스터 위에 올려 같은 모양으로 오려 내고, 포스터 조각을 상자에 붙인 뒤 상자를 다시 접어 조립합니다. 그러면 2D 포스터 그림이 입혀진 3D 상자가 완성됩니다.

UV 펼치기가 바로 이 과정입니다. 가위로 자르는 곳을 정하고(솔기), 탁자에 펼치고(Unwrap), 그 위에 그림을 겹쳐 두는 것(이미지 텍스처)입니다.

상자 윗면과 앞면처럼 3D에서 맞닿아 있던 면은 전개도에서도 서로 맞닿은 칸에 그대로 놓입니다. 3D에서 이웃한 면은 펼친 뒤에도 가능한 한 이웃하게 두는 것, 이것이 UV 펼치기가 하는 일입니다. 반대로 전개도의 바깥 테두리, 곧 가위로 자른 곳은 3D에서는 붙어 있던 모서리라서, 그림을 그릴 때 이 경계를 넘어가는 무늬는 끊겨 보일 수 있습니다.

여기에 두 가지 자유가 더 있습니다. 첫째, 면을 하나씩 떼어 따로 옮기고, 돌리고, 크기를 바꿀 수 있습니다. 둘째, UV 맵에서 면끼리 겹치게 둘 수도 있는데, 그러면 두 면이 그림의 같은 부분을 함께 씁니다. 좌우가 똑같은 물체라면 이 점을 이용해 그림 공간을 아낄 수 있습니다.

펼쳐진 한 덩어리 조각을 UV 섬(island, 이어진 조각 하나)이라고 부릅니다. 상자 하나를 한 번에 펼치면 섬 하나, 뚜껑을 따로 잘라 내면 섬 두 개가 됩니다.

솔기: 어디를 자를지 정하는 선

상자는 모서리를 자르면 되지만, 공이나 캐릭터 얼굴처럼 둥근 모양은 자를 곳을 직접 정해야 합니다. 이때 쓰는 것이 솔기(Seam)입니다. 바느질에서 솔기는 천의 끝과 끝이 꿰매어 이어지는 곳입니다. UV 맵은 솔기에서 끊어집니다.

오렌지 껍질 벗기기에 빗대어 볼 수도 있습니다. 껍질에 칼집을 몇 줄 낸 뒤 벗겨 내면 평평하게 펼 수 있고, 펼칠 때 껍질이 조금씩 늘어납니다. 이 칼집이 솔기입니다.

솔기를 잘 넣는 요령

  • 솔기도 늘어남도 적게: 솔기가 많을수록 늘어남은 줄지만, 조각이 많아져 그림을 그리기 어려워집니다. 솔기도 늘어남도 가능한 한 적게, 둘 사이의 균형을 잡는 편이 좋습니다.
  • 안 보이는 곳에 숨기기: 솔기 자리에서는 그림이 끊겨 보일 수 있으니 뒤쪽, 옆구리 안쪽처럼 눈에 덜 띄는 곳에 둡니다. 예를 들어 원통은 가장 뒤쪽 세로 선에 솔기를 둡니다.
  • 좌우 대칭이면 가운데로 자르기: 머리나 몸처럼 좌우가 같은 물체는 대칭축을 따라 자르면, 오른쪽과 왼쪽이 그림의 같은 부분을 함께 쓸 수 있습니다.
  • 필요 없는 부분은 잘라 두기: 머리카락에 가려질 정수리처럼 그림이 필요 없는 부분은 솔기로 경계 지어 펼치기에서 뺄 수 있습니다.

솔기를 넣는 방법은 간단합니다. 편집 모드(Edit Mode)에서 선을 선택하고 Ctrl+E를 누른 뒤 Mark Seam을 고릅니다. 지울 때는 같은 메뉴의 Clear Seam을 씁니다. 매뉴얼이 권하는 작업 순서는 "솔기 표시 → 펼치기 → 솔기 고치고 반복 → UV를 손으로 다듬기"입니다.

Blender에서 펼치는 순서

펼치기는 모양을 거의 다 만든 다음에 하는 편이 좋습니다. 펼친 뒤에 면을 추가하거나 나누면 Blender가 새 면을 넣어 주긴 하지만, 추가로 손봐야 할 수 있기 때문입니다.

  1. 화면 위쪽 작업 공간 탭에서 UV Editing을 고릅니다. 한쪽은 UV 편집기(UV Editor), 다른 쪽은 3D 뷰포트로 나뉜 화면이 열립니다.
  2. 3D 뷰포트에서 물체를 고르고 Tab으로 편집 모드에 들어갑니다. 펼치기는 모두 편집 모드에서 합니다.
  3. 필요한 곳에 솔기를 표시합니다.
  4. 펼칠 면을 선택하고(전체는 A) U를 눌러 펼치기 메뉴를 엽니다. 솔기를 넣었다면 처음에는 Unwrap Angle Based를 고릅니다. 상자나 기계처럼 각진 물체라 솔기를 넣지 않았다면 Smart UV Project를 고릅니다.
  5. 왼쪽 UV 편집기에 펼쳐진 조각(섬)이 나타납니다. 겹치거나 비뚤어진 곳을 다듬습니다.

화면의 각 영역이 무엇인지는 Blender 화면 구성 가이드를 함께 보면 찾기 쉽습니다.

펼치기 방법 고르는 법

U 메뉴에는 여러 방법이 있습니다. 처음에 고르기 쉽게 정리하면 다음과 같습니다.

방법하는 일어울리는 물체
Unwrap 세 가지솔기를 따라 잘라 평평하게 펴고 배치사람, 동물처럼 둥글고 유기적인 모양
Smart UV Project면 사이 각도를 보고 날카로운 모서리에서 자동으로 자름기계, 건물처럼 각진 모양
Cube / Cylinder / Sphere Projection가상의 상자·원통·구에 투영한 뒤 펼침상자, 기둥, 공에 가까운 부분
Project from View지금 보는 방향 그대로 찍어 펼침실제 물체 사진을 그대로 입힐 때
Lightmap Pack면을 하나씩 따로 배치조명을 그림으로 구워 둘 때(특수 용도)

Unwrap 세 가지 가운데 고르기

Blender 5.2에서는 U 메뉴의 Unwrap이 세 가지 항목으로 나뉘어 있습니다. 셋 다 솔기를 따라 잘라 펴는 일은 같고, 평평하게 펴는 계산 방식만 다릅니다.

메뉴 이름설명언제
Unwrap Angle Based메시를 2D로 잘 표현함(계산 방식 이름은 ABF)처음 펼칠 때 기본 선택
Unwrap Conformal보통 Angle Based보다 덜 정확하지만 단순한 물체에서는 더 잘 맞음(계산 방식 이름은 LSCM)상자처럼 단순한 모양
Unwrap Minimum Stretch넓이와 각도의 왜곡을 함께 줄이려 함(계산 방식 이름은 SLIM). 반복 횟수(Iterations)를 늘리면 왜곡이 더 줄어듦늘어남이 눈에 띌 때 다시 시도

비유하면 같은 전개도를 펴는 세 가지 다림질 방식입니다. ABF, LSCM, SLIM은 다른 강좌에서 이 이름으로 부를 때 알아볼 수 있으면 충분합니다. 처음에는 Angle Based로 펴 보고, 체크무늬가 많이 늘어나 보이면 Minimum Stretch로 다시 펴 보는 순서가 무난합니다.

몇 가지 알아 둘 점이 있습니다.

  • Unwrap(세 가지 모두)은 기존 UV를 덮어씁니다. 이미 다듬어 둔 UV가 있다면 펼칠 면만 골라서 실행하세요.
  • Smart UV Project의 Angle Limit: 값을 낮추면 왜곡이 적은 작은 섬이 많이 생기고, 높이면 섬이 크고 적어지는 대신 왜곡이 늘 수 있습니다.
  • Project from View는 멀어지는 곳이 늘어납니다. 카메라에서 비스듬히 멀어지는 면은 그림이 길게 늘어집니다.

부분마다 나눠 펼치기

캐릭터 머리를 예로 들어 보겠습니다. 머리 전체를 한 번에 펼치면 귀와 얼굴은 찌그러지고 목은 너무 늘어날 수 있습니다. 대신 머리는 Sphere Projection, 귀는 정면에서 Project from View, 목은 Cylinder Projection처럼 부분마다 알맞은 방법으로 나눠 펼치는 편이 낫습니다. 귀와 목 둘레에 솔기를 넣고 Unwrap(예: Unwrap Angle Based)을 한 번 실행해도 비슷한 결과를 얻을 수 있습니다.

늘어남(왜곡) 확인하고 줄이기

펼치기에서 가장 흔한 문제는 왜곡(distortion)입니다. 둥근 지붕(돔)을 원판 모양으로 펼친 경우를 생각해 보세요. 칸 크기가 모두 같은 체크무늬 그림을 이 돔에 입히면, 아래쪽 칸은 작고 위쪽 칸은 크게 보입니다. 펼치는 과정에서 UV 면들의 크기 비율이 3D에서와 달라졌기 때문입니다. 지구본을 평평한 세계 지도로 펼치면 극지방이 크게 늘어나는 것과 같은 이치입니다. 솔기 등으로 왜곡을 줄일 수 있지만, 완전히 없애는 것이 늘 가능하지는 않습니다.

왜곡을 확인하는 방법은 두 가지입니다.

  1. 체크무늬 이미지를 입혀 보기: 체크무늬 이미지를 따로 구할 필요는 없습니다. UV 편집기 머리(위쪽 막대)의 New 버튼을 누르고 Generated Type을 UV Grid로 바꾸면 Blender에 내장된 체크무늬 테스트 이미지가 만들어집니다. 이 이미지를 물체에 입히는 순서는 이렇습니다.

    • 화면 위쪽의 Shading 작업 공간 탭으로 가서 물체에 재질을 만듭니다.
    • 셰이더 편집기(Shader Editor)에서 Shift+A를 눌러 Texture ‣ Image Texture 노드를 추가합니다.
    • 노드의 이미지 목록에서 방금 만든 이미지를 고르고, 노드의 Color 출력을 Principled BSDF의 Base Color에 잇습니다.

    칸이 모두 비슷한 정사각형으로 보이면 잘 펼쳐진 것입니다. 한쪽이 길쭉하거나 작아지면 그 부분의 솔기나 펼치기 방법을 바꿔 봅니다.

  2. UV 편집기의 Display Stretch 켜기: UV 편집기의 오버레이에서 이 옵션을 켜면 왜곡 정도를 색으로 보여 줍니다. 파란색은 왜곡이 적고, 빨간색은 왜곡이 큰 곳입니다. 각도 차이(Angle)나 넓이 차이(Area) 중 무엇을 볼지 고를 수 있습니다.

섬 정리하기: Pack Islands

여러 번 나눠 펼치면 섬들이 서로 겹쳐 있을 수 있습니다. 섬 하나를 고를 때는 점 하나를 선택하고 Ctrl+L을 누르면 이어진 부분이 모두 선택됩니다. 겹친 섬은 줄이고 옮겨 겹치지 않게 하거나, UV 편집기 위쪽 메뉴의 UV ‣ Pack Islands로 Blender가 자동으로 배치하게 합니다. Pack Islands는 섬의 크기, 위치, 회전을 조정해 그림 공간을 효율적으로 채우고, 섬 사이에 여백을 남깁니다. 여행 가방에 짐을 빈틈없이 채워 넣는 것과 비슷합니다.

셰이더 노드와 이어지는 부분

펼친 UV는 재질에서 쓰입니다. 셰이더 노드의 Image Texture 노드는 Vector 입력을 비워 두면 물체의 활성 UV 맵을 좌표로 씁니다. 그래서 UV를 펼친 뒤 Image Texture 노드를 Principled BSDF의 Base Color에 이으면 그림이 UV대로 입혀집니다. 노드를 잇는 법은 셰이더 노드와 재질 가이드에서, 금속·거칠기 같은 사실적인 재질 텍스처는 PBR 재질 가이드에서 이어서 볼 수 있습니다.

UV 맵은 속성 편집기(Properties)의 Data 탭에 있는 UV Maps 목록에서 관리합니다. 메시 하나에 UV 맵을 여러 개 둘 수 있습니다(예: 텍스처마다 하나).

자주 하는 실수

  • 모델을 다 만들기 전에 펼치기: 나중에 면을 크게 바꾸면 다시 펼쳐야 할 수 있습니다.
  • 솔기 없이 둥근 물체를 Unwrap Angle Based로 펼치기: 조각이 심하게 찌그러질 수 있습니다. 먼저 솔기를 넣으세요.
  • 다듬은 UV 위에 전체 Unwrap(Angle Based·Conformal·Minimum Stretch 중 무엇이든) 다시 실행: 기존 UV가 덮어써집니다.
  • 강좌에서 본 'Unwrap' 한 줄짜리 메뉴를 못 찾기: 5.2에서는 U 메뉴의 Unwrap Angle Based, Unwrap Conformal, Unwrap Minimum Stretch가 그 자리입니다.
  • 섬끼리 실수로 겹침: 그림이 두 곳에 똑같이 찍힙니다. 의도한 것이 아니라면 Pack Islands로 정리하세요.

단색 위주의 로우폴리 스타일이라면 UV를 꼼꼼히 펼치지 않고 재질 색만으로 표현하는 경우도 많습니다. 어떤 스타일이 어떤 작업을 줄여 주는지는 로우폴리 스타일 가이드에서, 면과 선의 흐름이 펼치기에 주는 영향은 폴리곤과 토폴로지 가이드에서 더 볼 수 있습니다.

참고 자료

매뉴얼 링크는 버전이 고정된 Blender 5.2 LTS 주소입니다.

KEEP EXPLORING

다음으로 읽어보세요

Blender 5.2 설명서의 지오메트리 노드 소개 페이지 (공식 사이트 화면 캡처)Blender
Blender 기초14분 읽기

Blender 지오메트리 노드 입문: 규칙으로 모양 만들기

Blender 지오메트리 노드는 손 대신 '규칙'으로 모양을 만듭니다. 노드·흐름·필드·인스턴스를 조립 라인에 빗대어 쉽게 설명합니다.

Blender 5.2를 처음 켜고 시작 화면을 닫은 기본 화면: 가운데 3D 뷰포트, 오른쪽 위 아웃라이너, 그 아래 속성 편집기, 맨 아래 타임라인 (Blender 화면 캡처)Blender
Blender 기초14분 읽기

Blender 화면 구성: 처음 켰을 때 알아야 할 5가지

처음 켠 Blender 화면을 다섯 가지로 나눠 봅니다. 화면 세 층, 작업 공간, 기본 편집기 넷, 모드, 시점 조작까지 살펴봅니다.

Animation 작업 공간에서 큐브에 위치 키프레임 세 개(1·30·60프레임)를 넣고 그래프 에디터로 곡선을 본 화면. 키가 있는 Location 칸은 노랗게 표시된다 (Blender 화면 캡처)Blender
Blender 기초13분 읽기

Blender 키프레임 애니메이션 입문: 키 넣기와 그래프 에디터

중요한 순간만 정하면 사이는 Blender가 채웁니다. 키프레임 넣는 법과 그래프 에디터로 움직임을 다듬는 법을 징검다리에 빗대어 쉽게 설명합니다.

큐브 하나에 Bevel, Array, Subdivision 모디파이어를 차례로 쌓아 네 개로 늘어난 모습과 오른쪽 속성 편집기의 모디파이어 스택 (Blender 화면 캡처)Blender
Blender 기초13분 읽기

모디파이어란? 원본을 망치지 않고 모양 바꾸기

모디파이어는 원본 위에 얹는 효과 필터입니다. 스택 순서, Apply, 자주 쓰는 6가지를 정리했습니다.

Resolution 1920×1080에서 % 값을 100·75·50·25로 바꿨을 때의 실제 크기를 16:9 사각형 네 개로 겹쳐 보인 도표. 100%는 1920×1080, 75%는 1440×810, 50%는 960×540, 25%는 480×270이고 오른쪽에 픽셀 수가 적혀 있습니다 (도표)Blender
Blender 기초14분 읽기

Blender 렌더 설정 입문: 해상도·프레임·샘플 수와 빠른 미리보기

Blender의 해상도, 프레임 레이트, 샘플 수가 렌더링 시간에 어떻게 이어지는지 풀고, 작게 확인하고 크게 마무리하는 순서를 설명합니다.

T자로 선 뼈대와, 같은 자세로 컨트롤을 단 로우폴리 캐릭터 (Blender 렌더)Blender
Blender 기초13분 읽기

리깅 입문: 뼈대(아마추어)로 캐릭터 움직이기

리깅은 캐릭터 속에 뼈대를 넣고 살을 붙여 움직일 수 있게 만드는 작업입니다. 아마추어, 스키닝, 가중치, IK를 쉽게 설명합니다.