들어가며
형태를 다 만들었다면 이제 그 표면에 생명을 불어넣을 차례입니다. 같은 메시라도 무엇을 입히느냐에 따라 차가운 금속이 되기도 하고, 거친 콘크리트가 되기도 하며, 젖은 가죽이 되기도 합니다. 이 표면의 표정을 결정하는 일이 바로 텍스처링이고, 그 표면에 빛을 비춰 최종 이미지를 만드는 일이 렌더링입니다.
오늘날 거의 모든 3D 작업은 **PBR(Physically Based Rendering, 물리 기반 렌더링)**이라는 약속 위에서 이루어집니다. PBR은 빛이 실제 물질의 표면에서 어떻게 반사되고 흡수되는지를 물리 법칙에 가깝게 모사하려는 접근입니다. 덕분에 한 번 잘 만든 재질은 어떤 조명 환경에 놓여도 그럴듯하게 반응하고, 도구나 엔진이 달라도 비슷한 결과를 보여 줍니다.
PBR이 등장하기 전에는 아티스트가 조명을 짐작하며 표면의 밝기와 반사를 일일이 손으로 칠해야 했습니다. 조명이 바뀌면 그 모든 작업이 어색해졌습니다. PBR은 이 문제를 물리에 기반한 일관된 규칙으로 해결했고, 그 결과 재질 작업이 훨씬 예측 가능하고 재사용하기 쉬워졌습니다.
이 글에서는 텍스처 작업의 출발점인 UV 언래핑부터, PBR을 이루는 핵심 채널들, 텍스처 맵의 종류와 베이킹, 그리고 빛을 다루는 렌더링과 라이팅까지 차근차근 짚어 보겠습니다. 어렵게 들리는 용어가 많지만, 하나씩 풀어 보면 결국 "빛과 물질의 관계"라는 하나의 이야기로 모입니다.
UV 언래핑: 3D 표면을 2D로 펼치다
3D 모델 표면에 그림을 입히려면, 먼저 그 표면을 평평하게 펼쳐야 합니다. 마치 종이 상자를 뜯어 펼치면 평면 전개도가 되는 것과 같습니다. 이 과정을 **UV 언래핑(UV unwrapping)**이라 부르고, 펼쳐진 2D 좌표를 UV 좌표라고 합니다.
UV 언래핑의 개념
3D 모델(큐브) 전개도(UV)
┌───┐ ┌───┐
/ /│ 펼치면 │ 위 │
┌───┐ │ ───────▶ ┌───┬───┬───┬───┐
│ │ / │ 좌 │ 앞 │ 우 │ 뒤 │
│ │/ └───┴───┴───┴───┘
└───┘ │ 아래│
└───┘
* X,Y,Z 대신 U,V 두 축으로 표현하기에 "UV"라 부릅니다.
UV 언래핑에서 가장 중요한 개념은 **심(seam)**, 즉 펼치기 위해 잘라 내는 가상의 절개선입니다. 옷을 만들 때 솔기를 두는 것과 같습니다. 심을 어디에 두느냐에 따라 텍스처가 늘어나는 정도(왜곡)와 이음매가 눈에 띄는 정도가 달라집니다.
좋은 UV의 조건은 대략 다음과 같습니다.
- **낮은 왜곡**: 3D 표면의 면적 비율이 2D에서도 최대한 유지되어야 텍스처가 늘어나지 않습니다.
- **심의 위치**: 눈에 잘 띄지 않는 곳(물체의 안쪽, 모서리)에 심을 두어 이음매를 숨깁니다.
- **충분한 해상도 배분**: 카메라에 가까이 잡히는 부분에 UV 공간을 더 넓게 할당합니다.
- **겹침 없음**: 의도적인 경우가 아니라면 UV 조각끼리 겹치지 않아야 합니다.
UV 작업은 지루하게 느껴질 수 있지만, 텍스처 품질의 기반입니다. UV가 엉성하면 아무리 좋은 텍스처를 만들어도 표면이 늘어나거나 이음매가 도드라집니다.
PBR의 핵심 개념
PBR은 표면의 성질을 몇 개의 채널로 나누어 정의합니다. 가장 널리 쓰이는 **메탈릭/러프니스(Metallic/Roughness) 워크플로**를 기준으로 핵심 채널을 살펴보겠습니다.
PBR 메탈릭/러프니스 워크플로의 핵심 채널
베이스컬러 ──┐
(Base Color) │
├──▶ [PBR 셰이더] ──▶ 최종 표면 표현
메탈릭 │ ▲
(Metallic) │ │
│ 조명·환경
러프니스 │
(Roughness) │
│
노멀 │
(Normal) ──┘
- **베이스컬러(Base Color / Albedo)**: 표면 고유의 색입니다. 그림자나 하이라이트가 포함되지 않은, 순수한 색 정보만 담아야 합니다. 빛 정보가 섞여 있으면 어떤 조명에서도 어색해집니다.
- **메탈릭(Metallic)**: 표면이 금속인지 비금속인지를 0과 1 사이로 정의합니다. 금속과 비금속은 빛을 반사하는 방식이 근본적으로 달라, 이 값 하나가 재질의 성격을 크게 좌우합니다. 보통 0(비금속) 또는 1(금속)에 가깝게 두고, 중간값은 드물게 씁니다.
- **러프니스(Roughness)**: 표면이 얼마나 거친지를 0(매끈한 거울)에서 1(완전히 흐릿함)까지 정의합니다. 같은 색의 금속이라도 러프니스가 낮으면 반짝이는 크롬처럼, 높으면 흐릿한 알루미늄처럼 보입니다. 사실 재질의 인상을 가장 크게 결정하는 채널입니다.
- **노멀맵(Normal Map)**: 실제 폴리곤을 늘리지 않고도 표면에 작은 요철이 있는 것처럼 빛을 속이는 맵입니다. 푸른빛이 도는 특유의 색으로 저장되며, 각 픽셀이 표면 법선의 방향을 담고 있습니다. 벽돌의 줄눈, 천의 짜임, 피부의 모공 같은 미세 디테일을 적은 폴리곤으로 표현하게 해 줍니다.
러프니스에 따른 표면 인상 (같은 금속)
러프니스 0.0 ████ 선명한 반사, 거울 같은 크롬
러프니스 0.3 ▓▓▓▓ 또렷하지만 약간 퍼진 하이라이트
러프니스 0.6 ▒▒▒▒ 넓고 부드러운 반사, 무광 느낌
러프니스 1.0 ░░░░ 반사 거의 없음, 흐릿한 표면
이 네 채널을 이해하면 PBR의 절반은 안 셈입니다. 결국 "이 표면은 무슨 색이고(베이스컬러), 금속인가 아닌가(메탈릭), 매끈한가 거친가(러프니스), 미세 요철은 어떤가(노멀)"라는 네 질문에 답하는 일이기 때문입니다.
텍스처 맵의 종류와 베이킹
위의 핵심 채널 외에도 표현을 풍부하게 하는 보조 맵이 여럿 있습니다.
주요 텍스처 맵과 역할
맵 종류 담는 정보
──────────────── ────────────────────────────────
Base Color 표면 고유의 색
Metallic 금속/비금속 구분
Roughness 표면 거칠기
Normal 미세 요철(법선 방향)
Height/Displacement 실제 높이(메시를 변형하기도 함)
Ambient Occlusion 틈새의 자연스러운 그늘
Emissive 스스로 빛나는 영역
- **하이트/디스플레이스먼트(Height/Displacement)**: 표면의 높낮이를 담습니다. 노멀맵이 빛을 속이는 데 그친다면, 디스플레이스먼트는 실제로 메시를 변형해 깊은 굴곡을 만들 수 있습니다.
- **앰비언트 오클루전(Ambient Occlusion, AO)**: 물체의 틈새나 오목한 곳에 생기는 미묘한 그늘을 미리 담아 둔 맵입니다. 표면에 깊이감을 더합니다.
- **에미시브(Emissive)**: 스스로 빛을 내는 부분을 표시합니다. 네온사인, 화면, 빛나는 문양 등에 씁니다.
베이킹: 정보를 텍스처로 굽다
**베이킹(baking)**은 복잡한 정보를 미리 계산해 텍스처 이미지로 저장하는 과정입니다. 가장 흔한 예가 하이폴리(high-poly) 모델의 디테일을 로우폴리(low-poly) 모델의 노멀맵으로 굽는 것입니다.
노멀맵 베이킹의 원리
하이폴리 모델 로우폴리 모델
(수백만 폴리곤) (수천 폴리곤)
│ │
│ 표면 디테일을 │ 여기에 적용
│ 광선으로 측정 ▼
└──────────▶ [노멀맵 텍스처] ──▶ 적은 폴리곤으로
하이폴리처럼 보임
스컬프팅으로 만든 정교한 디테일은 폴리곤이 너무 많아 게임이나 실시간에 그대로 쓸 수 없습니다. 그래서 하이폴리의 표면 정보를 노멀맵으로 구워, 가벼운 로우폴리 모델에 입힙니다. 이렇게 하면 적은 폴리곤으로도 풍부한 디테일을 표현할 수 있습니다. AO나 커버처(curvature) 맵도 비슷한 방식으로 구워 머티리얼 작업에 활용합니다.
렌더링 파이프라인: 래스터화와 레이트레이싱
텍스처가 준비되면 이제 빛을 비춰 최종 이미지를 만들 차례입니다. 화면에 픽셀을 그려 내는 방식은 크게 두 갈래로 나뉩니다.
두 가지 렌더링 방식의 흐름
[래스터화 Rasterization]
3D 폴리곤 ──▶ 화면 평면에 투영 ──▶ 픽셀로 채움 ──▶ 셰이딩
* 빠름. 게임 등 실시간에 주로 사용.
[레이트레이싱 Ray Tracing]
카메라에서 광선 발사 ──▶ 물체와 충돌 ──▶ 반사·굴절 추적
──▶ 빛의 경로 누적
* 사실적. 반사·그림자·굴절이 자연스러움. 무거움.
- **래스터화(Rasterization)**: 3D 폴리곤을 화면이라는 2D 평면에 투영하고, 그 안을 픽셀로 채운 뒤 셰이딩하는 방식입니다. 매우 빠르기 때문에 게임처럼 실시간으로 매 프레임을 그려야 하는 환경에서 주로 씁니다. 다만 반사나 그림자 같은 빛의 상호작용은 별도의 기법으로 흉내 내야 합니다.
- **레이트레이싱(Ray Tracing)**: 카메라(눈)에서 광선을 쏘아, 그 광선이 물체에 부딪히고 반사·굴절하며 빛의 근원까지 이어지는 경로를 추적하는 방식입니다. 반사·그림자·굴절·간접광이 물리적으로 자연스럽게 나옵니다. 대신 계산량이 많아 무겁습니다. 영화나 고품질 정지 이미지처럼 시간을 들여도 되는 경우에 적합합니다.
오늘날 경계는 흐려지고 있습니다. 게임에서도 부분적으로 레이트레이싱을 결합한 하이브리드 방식이 늘고 있으며, 이는 하드웨어와 엔진 버전에 따라 지원 범위가 다를 수 있습니다.
두 방식의 성격 비교
항목 래스터화 레이트레이싱
────────── ───────────── ─────────────
속도 빠름 느림
사실성 기법으로 보완 물리적으로 자연
주 용도 실시간(게임) 오프라인(영화)
반사/굴절 별도 트릭 필요 기본적으로 표현
라이팅: 빛이 곧 분위기
아무리 좋은 재질도 조명이 나쁘면 살아나지 않습니다. 라이팅은 장면의 분위기와 형태감을 결정하는 마지막 열쇠입니다.
기본 3점 조명(Three-Point Lighting)
[키 라이트]
(주광)
\
\
▼
[필 라이트] ──▶ ◯ 피사체 ◀── [백 라이트]
(보조광, (림광,
그림자 완화) 윤곽 분리)
- 키: 가장 밝은 주된 빛, 형태와 그림자를 만듦
- 필: 그림자를 부드럽게 채우는 보조 빛
- 백: 뒤에서 비춰 피사체를 배경에서 분리
라이팅에서 알아 두면 좋은 개념들이 있습니다.
- **키 라이트(Key Light)**: 장면의 주된 광원입니다. 형태와 그림자의 방향을 결정합니다.
- **필 라이트(Fill Light)**: 키 라이트가 만든 짙은 그림자를 부드럽게 채워 줍니다.
- **백 라이트/림 라이트(Back/Rim Light)**: 뒤에서 윤곽을 비춰 피사체를 배경에서 분리합니다.
- **HDRI 환경광**: 360도 파노라마 이미지로 장면 전체를 자연스럽게 비추는 방식입니다. 실내외 어디서나 사실적인 분위기를 빠르게 잡을 수 있습니다.
좋은 라이팅의 핵심은 빛의 세기보다 **대비와 방향**입니다. 한쪽에서 강하게 비추고 반대쪽을 어느 정도 어둡게 두면 형태가 또렷하게 드러납니다. 모든 곳을 균일하게 밝히면 입체감이 사라져 밋밋한 이미지가 됩니다.
머티리얼 작업: Substance를 중심으로
PBR 텍스처를 만드는 대표적인 도구가 Adobe의 **Substance 3D** 제품군입니다. 특히 Substance 3D Painter는 3D 모델 위에 직접 페인팅하듯 재질을 입힐 수 있어 널리 쓰입니다.
일반적인 머티리얼 작업 흐름
1. UV가 정리된 모델 불러오기
▼
2. 노멀·AO·커버처 등 베이킹
▼
3. 기본 재질(스마트 머티리얼) 적용
▼
4. 마스크·제너레이터로 때·긁힘·녹 추가
▼
5. 디테일 페인팅(먼지, 손때, 흠집)
▼
6. PBR 채널별 텍스처로 내보내기(export)
Substance 방식의 강점은 **절차적 마스킹**입니다. 모서리에는 자동으로 칠이 벗겨지게 하고, 오목한 곳에는 먼지가 쌓이게 하는 식의 규칙을 적용해, 손으로 일일이 칠하지 않고도 자연스러운 마모와 때를 표현할 수 있습니다. 베이킹한 커버처·AO 맵이 이런 자동 효과의 기준이 됩니다.
물론 Substance가 유일한 길은 아닙니다. Blender 안에서도 노드 기반으로 PBR 재질을 만들 수 있고, 사진을 활용한 텍스처나 공개 라이브러리의 재질을 가져다 쓰는 방법도 있습니다. 각 도구의 구체적 기능은 버전에 따라 다를 수 있으니 공식 문서를 함께 확인하는 것이 좋습니다.
실무 팁
텍스처링과 렌더링에서 결과를 끌어올리는 몇 가지 실천적인 조언입니다.
- **베이스컬러에 빛 정보를 넣지 마세요**: 그림자나 하이라이트가 베이스컬러에 그려져 있으면, 조명이 바뀔 때 어색해집니다. 빛은 라이팅과 다른 채널에 맡기세요.
- **러프니스에 변화를 주세요**: 완전히 균일한 러프니스는 비현실적입니다. 실제 표면은 닦인 곳과 때 탄 곳의 거칠기가 미묘하게 다릅니다. 러프니스 맵에 변화를 주면 사실감이 크게 올라갑니다.
- **텍셀 밀도를 일정하게**: 한 장면 안의 여러 물체가 서로 다른 텍스처 해상도(텍셀 밀도)를 가지면 어떤 건 선명하고 어떤 건 흐릿해 통일감이 깨집니다. 밀도 기준을 정해 두세요.
- **레퍼런스를 끝까지 보세요**: 실제 금속, 나무, 천이 빛을 어떻게 반사하는지 사진으로 끊임없이 비교하세요. 기억보다 관찰이 정확합니다.
- **AO를 과하게 곱하지 마세요**: AO는 보조적인 그늘입니다. 베이스컬러에 강하게 곱해 버리면 부자연스럽게 어두워집니다. 엔진의 라이팅이 대부분의 그늘을 담당하게 두세요.
- **노출과 톤매핑을 의식하세요**: 최종 이미지의 밝기는 카메라의 노출과 톤매핑 설정에도 크게 좌우됩니다. 재질만 보지 말고 최종 출력 화면에서 판단하세요.
두 가지 PBR 워크플로: 메탈릭 vs 스페큘러
지금까지는 메탈릭/러프니스 워크플로를 기준으로 설명했지만, 또 다른 표준인 **스페큘러/글로시니스(Specular/Glossiness)** 워크플로도 알아 둘 필요가 있습니다. 두 방식은 같은 물리 모델을 다른 채널 구성으로 표현합니다.
두 PBR 워크플로 비교
항목 메탈릭/러프니스 스페큘러/글로시니스
───────────── ────────────────── ──────────────────
핵심 채널 BaseColor, Metallic, Diffuse, Specular,
Roughness Glossiness
금속 표현 Metallic 값으로 구분 Specular 색으로 구분
텍스처 용량 상대적으로 적음 상대적으로 많음
실수 여지 적음(흰/검 경계 단순) 많음(스페큘러 값 오류)
주 사용처 게임·실시간 다수 일부 파이프라인
오늘날 게임과 실시간 분야에서는 **메탈릭/러프니스**가 더 널리 쓰입니다. 채널이 단순하고 잘못 만들 여지가 적기 때문입니다. 다만 일부 파이프라인은 여전히 스페큘러 방식을 쓰므로, 자산을 주고받을 때 어느 워크플로를 쓰는지 확인하는 습관이 필요합니다. 두 방식은 변환이 가능하지만, 변환 과정에서 미묘한 차이가 생길 수 있습니다.
여기서 알아 둘 물리 개념이 하나 있습니다. **프레넬(Fresnel) 효과**입니다. 어떤 표면이든 시선과 표면이 이루는 각도가 얕아질수록(스치듯 볼수록) 반사가 강해집니다. 잔잔한 호수를 정면에서 보면 바닥이 비치지만, 멀리 비스듬히 보면 하늘이 거울처럼 반사되는 것이 바로 이 효과입니다. PBR 셰이더는 이 프레넬을 자동으로 처리하므로, 우리는 채널 값만 옳게 넣으면 됩니다.
흔한 텍스처 문제와 해결
텍스처 작업을 하다 보면 반복적으로 마주치는 문제들이 있습니다. 원인을 알면 빠르게 고칠 수 있습니다.
자주 겪는 텍스처 문제
증상 흔한 원인 해결 방향
──────────────── ────────────────── ──────────────────
이음매가 보임 심 위치·UV 불연속 심을 숨은 곳으로 이동
텍스처가 늘어남 UV 왜곡 과다 UV 재배치, 왜곡 확인
표면이 너무 매끈 러프니스 값 균일 러프니스에 변화 추가
노멀맵이 뒤집힘 녹/적 채널 규약 차이 Y(녹) 채널 반전 설정
금속이 검게 나옴 금속에 환경광 없음 반사 환경(HDRI) 추가
디테일이 흐릿함 텍스처 해상도 부족 텍셀 밀도 상향
특히 초보자가 자주 당황하는 것이 **노멀맵 방향 문제**입니다. 노멀맵에는 두 가지 규약이 있어, 표면의 요철이 안으로 들어가야 할 곳이 밖으로 튀어나오는(혹은 그 반대) 현상이 생길 수 있습니다. 이는 녹색 채널의 방향 차이에서 비롯되며, 도구의 설정에서 Y 채널을 반전하면 대개 해결됩니다.
또 하나 흔한 것이 **금속이 검게 보이는 문제**입니다. 금속은 스스로 색을 거의 내지 않고 주변 환경을 반사합니다. 그래서 반사할 환경(HDRI 같은 환경광)이 없으면 금속은 새카맣게 보입니다. 금속이 어색하게 어둡다면, 재질을 의심하기 전에 장면의 환경 반사부터 확인해 보세요.
작은 예제: 녹슨 금속 통
PBR의 흐름을 손에 잡히게 하기 위해, 녹슨 금속 통 하나에 재질을 입히는 과정을 따라가 보겠습니다.
녹슨 금속 통 텍스처링 흐름
1. 기본 금속 재질 깔기
BaseColor: 어두운 회색
Metallic: 1.0 (완전한 금속)
Roughness: 0.4 (약간 닦인 표면)
2. 녹 레이어 추가 (마스크 사용)
녹 영역: Metallic 0.0 (녹은 비금속)
Roughness 0.9 (거친 표면)
BaseColor 적갈색
3. 녹의 위치 결정
커버처 맵으로 모서리·이음매에 녹 집중
AO 맵으로 오목한 곳에 때 축적
4. 디테일 페인팅
물 흐른 자국, 긁힘, 페인트 벗겨짐 추가
5. 러프니스 변주
닦인 부분과 녹슨 부분의 거칠기 차이 강조
6. 내보내기
채널별 텍스처 출력 → 엔진/렌더러로 전달
이 예제의 핵심은 **녹이 곧 비금속이라는 점**입니다. 깨끗한 금속 부분은 메탈릭 1.0이지만, 녹슨 부분은 산화물이라 사실상 비금속처럼 행동하므로 메탈릭을 0.0으로 떨어뜨려야 자연스럽습니다. 이처럼 하나의 물체 안에서도 부위에 따라 채널 값이 달라지며, 그 변화를 마스크로 제어하는 것이 텍스처링의 묘미입니다. 커버처·AO 같은 베이크된 맵이 "어디에 녹이 슬어야 자연스러운가"를 자동으로 알려 주는 기준이 되어 줍니다.
베이킹의 함정과 케이지
노멀맵 베이킹은 강력하지만, 처음 다룰 때 자주 실패하는 단계이기도 합니다. 가장 흔한 문제와 그 원리를 짚어 보겠습니다.
베이킹 케이지의 역할
로우폴리 표면 ───────────────
│ 광선을 어디까지 쏠지
│ 범위를 정하는 것이 "케이지"
▼
케이지 ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ (살짝 부풀린 외피)
│
│ 케이지에서 안쪽으로 광선 발사
▼
하이폴리 디테일을 만나 노멀 정보 기록
* 케이지가 너무 좁으면 디테일이 잘림
* 케이지가 너무 넓으면 엉뚱한 면을 잡음
베이킹은 로우폴리 표면에서 광선을 쏘아 하이폴리의 표면 정보를 읽어 들이는 과정입니다. 이때 광선을 어디서부터 쏠지를 정하는 가상의 외피가 **케이지(cage)**입니다. 케이지가 적절해야 하이폴리 디테일이 깔끔하게 잡힙니다.
자주 겪는 베이킹 문제는 다음과 같습니다.
- **면 교차로 인한 줄무늬**: 로우폴리와 하이폴리가 잘 정렬되지 않으면 베이크된 맵에 이상한 줄이 생깁니다. 케이지 거리를 조정하거나 메시 위치를 맞춰 해결합니다.
- **UV 심에서의 이음매**: UV 조각 경계에서 노멀이 어긋나 보일 수 있습니다. 심 주변에 약간의 여백(패딩)을 두면 완화됩니다.
- **하드 엣지 처리**: 날카로운 모서리는 별도의 UV 분리나 스무딩 그룹 설정과 맞물려야 깨끗하게 베이크됩니다.
베이킹은 한 번에 완벽하게 나오는 일이 드뭅니다. 굽고, 확인하고, 케이지나 메시를 조정해 다시 굽는 반복이 자연스러운 과정입니다. 베이크 직후에는 반드시 결과를 확대해 검수하는 습관을 들이세요. 여기서 놓친 흠은 텍스처와 렌더 단계까지 그대로 따라옵니다.
라이팅 시나리오별 접근
같은 모델도 어떤 상황을 연출하느냐에 따라 라이팅 전략이 달라집니다. 몇 가지 흔한 시나리오를 살펴보겠습니다.
시나리오별 라이팅 접근
상황 핵심 광원 분위기 포인트
───────────── ────────────────── ──────────────────
제품 촬영 부드러운 키+필 균일하고 깨끗한 반사
야외 한낮 강한 태양광+HDRI 선명한 그림자, 푸른 하늘 반사
실내 분위기 따뜻한 면광원 은은한 그라데이션
극적 연출 강한 키, 어두운 배경 높은 대비, 림 라이트 강조
밤·네온 작은 강한 광원들 색 대비, 에미시브 활용
- **제품 촬영**: 재질을 또렷이 보여 주는 것이 목적이므로, 부드럽고 큰 광원으로 균일하게 비춥니다. 그림자가 과하지 않게 필 라이트로 채웁니다.
- **야외 한낮**: 강한 태양광 하나가 주광이 되고, HDRI 환경광이 하늘과 주변 반사를 담당합니다. 그림자가 선명합니다.
- **극적 연출**: 한쪽에서만 강하게 비추고 배경을 어둡게 두어 대비를 높입니다. 림 라이트로 피사체의 윤곽을 살립니다.
라이팅에 정답은 없습니다. 다만 "무엇을 보여 주고 싶은가"라는 질문을 먼저 던지면 광원의 배치가 자연스럽게 따라옵니다. 재질을 보여 줄지, 형태를 강조할지, 분위기를 연출할지에 따라 같은 장면도 전혀 다른 인상이 됩니다.
렌더 설정 실무: 샘플과 디노이징
레이트레이싱 계열 렌더러는 한 픽셀의 색을 정하기 위해 여러 개의 광선을 무작위로 쏘고 그 결과를 평균합니다. 이때 광선의 수를 **샘플(sample)**이라 부릅니다. 샘플이 적으면 빠르지만 화면에 자글자글한 노이즈가 끼고, 샘플이 많으면 깨끗하지만 느립니다.
샘플 수와 노이즈의 관계
샘플 적음(빠름) 샘플 많음(느림)
▒░▓░▒▓░▒ ████████
░▓░▒░▓▒░ 노이즈 많음 ████████ 깨끗함
▓░▒▓░▒░▓ ████████
* 샘플을 2배로 늘려도 노이즈는 절반만 줄어든다.
무작정 올리기보다 디노이저와 병행하는 것이 효율적.
여기서 중요한 도구가 **디노이저(denoiser)**입니다. 적은 샘플로 빠르게 렌더한 노이즈 낀 이미지를, 알고리즘으로 매끈하게 다듬어 주는 기능입니다. 오늘날 대부분의 렌더러는 디노이저를 내장하고 있어, 적당한 샘플 수와 디노이징을 조합하면 시간과 품질의 균형을 잡을 수 있습니다.
렌더 설정에서 알아 두면 좋은 개념을 몇 가지 더 정리합니다.
- **광선 바운스(Bounce)**: 광선이 표면에서 몇 번까지 튕기며 빛을 나를지를 정합니다. 바운스가 많을수록 간접광이 풍부해지지만 느려집니다.
- **클램핑(Clamping)**: 지나치게 밝은 점(파이어플라이라 부르는 흰 점 노이즈)을 억제하는 설정입니다.
- **해상도와 샘플의 균형**: 고해상도일수록 샘플도 더 필요합니다. 둘을 함께 고려해야 합니다.
실무에서는 처음부터 최고 설정으로 렌더하지 않습니다. 낮은 샘플로 빠르게 미리보기하며 구도·조명·재질을 다듬고, 마지막에 샘플을 올려 최종 출력합니다. 이 "빠른 반복 후 마지막에 품질 확보" 패턴이 렌더 작업의 기본 리듬입니다. 구체적인 설정값은 렌더러와 버전에 따라 다를 수 있으니, 자신의 장면에서 직접 시험하며 적정값을 찾는 것이 좋습니다.
마치며
PBR 텍스처링과 렌더링은 결국 "빛과 물질의 관계"를 다루는 일입니다. 표면을 2D로 펼치는 UV 언래핑에서 시작해, 색·금속성·거칠기·요철이라는 네 채널로 재질을 정의하고, 보조 맵과 베이킹으로 디테일을 보강한 뒤, 래스터화든 레이트레이싱이든 적절한 방식으로 빛을 비춰 최종 이미지를 완성합니다.
처음에는 채널과 맵의 이름이 많아 복잡해 보이지만, 각각이 "빛이 이 표면에서 어떻게 행동하는가"라는 하나의 질문에 답한다는 점을 기억하면 길을 잃지 않습니다. 실제 사물을 유심히 관찰하고, 그 관찰을 채널로 옮기는 연습을 반복하다 보면, 어느새 화면 속 표면이 진짜처럼 보이기 시작합니다.
다음 글에서는 이렇게 만든 자산이 게임의 실시간 환경과 영화의 오프라인 환경에서 어떻게 다르게 흘러가는지, 3D 파이프라인 전체를 조망합니다.
참고 자료
- [Blender 셰이딩·머티리얼 문서](https://docs.blender.org/manual/en/latest/render/shader_nodes/index.html)
- [Blender UV 편집 문서](https://docs.blender.org/manual/en/latest/modeling/meshes/uv/index.html)
- [Adobe Substance 3D](https://www.adobe.com/products/substance3d.html)
- [Substance 3D 공식 문서](https://helpx.adobe.com/substance-3d-painter/get-started.html)
- [Khronos glTF PBR 머티리얼 명세](https://www.khronos.org/gltf/)
- [Blender Cycles 렌더러 문서](https://docs.blender.org/manual/en/latest/render/cycles/index.html)
- [Blender EEVEE 실시간 렌더러 문서](https://docs.blender.org/manual/en/latest/render/eevee/index.html)
- [NVIDIA 레이트레이싱 기술 소개](https://developer.nvidia.com/rtx/ray-tracing)
현재 단락 (1/230)
형태를 다 만들었다면 이제 그 표면에 생명을 불어넣을 차례입니다. 같은 메시라도 무엇을 입히느냐에 따라 차가운 금속이 되기도 하고, 거친 콘크리트가 되기도 하며, 젖은 가죽이 되기...