
# 신뢰의 원 만들기: 현실적인 비주얼 제작을 위한 가이드
## 소개
* **발표자:** Mike Weiss (Epic, Senior Solution Architect)
* **주요 업무:** 자동차, 항공우주, 리테일 등 다양한 산업 분야의 제품 시각화 지원
* **핵심:** 실제와 같은 높은 충실도의 스토리텔링을 위한 시각적 신뢰성 확보
## 왜 시각적 신뢰성이 중요한가?
* 과거: 멋진 경험 + 후반 작업 = 만족
* 현재:
* **필수 요구사항:** 팀원들과의 협업 시, 소재, 조명 등이 실제 제품처럼 상호작용하는지 신뢰해야 함.
* **목표:** 재작업, 재확인, 추가 확인 절차 최소화. 화면에 보이는 것이 실제 제품과 일치함을 보장.
## Unreal Engine에서의 신뢰성 확보
* **목표:** 누구나 쉽게 따라 할 수 있고, 즉시 적용 가능하며, 반복 가능한 솔루션 제공
* **핵심 요소:**
* **소재 파이프라인 (Materials Pipeline):** 실제 세계 소재를 Unreal Engine에서 정확하게 표현하는 능력
* **색상 정확성 (Color Accuracy):** 모든 디스플레이 및 기기에서 일관된 색상 보장
* **신뢰 기반의 조명 (Trusted Lighting):** 실제 조명 환경 재현
---
## 1. 신뢰의 기반: 소재 (Substrate)
### 1.1. Substrate 소개
* **개념:** 물리적 물질이 Unreal Engine에서 어떻게 표현되는지를 정의하는 시스템
* **주요 특징:**
* **계층적 구조:** 페인트 코트처럼 여러 겹의 소재(Slabs)로 구성 (예: 베이스 코트, 클리어 코트)
* **Slab:**
* **Medium:** 빛과의 상호작용 (흡수, 산란, 투과)
* **Interface:** 슬랩 간의 상호작용, 표면 코팅 (예: 먼지, 오일)
* **확장성:** High-end 시각화부터 모바일 기기까지 예산에 맞게 확장 가능 (Nanite와 유사)
* **단일 셰이더:** 모든 플랫폼에서 동일한 셰이더 정의 사용 가능
* **제품 시각화 이점:** 레이 트레이스 스위치, 모바일/데스크톱 분리 등 복잡한 변형 불필요
### 1.2. Substrate 활용
* **Layering & Blending:** 두 소재를 겹치거나 혼합하는 수직/수평 혼합 가능
* **Material Pipeline:** 실제 세계 소재를 Unreal Engine에서 정확하게 표현
* **도구:** Epic의 샘플 콘텐츠 프로젝트 (Substrate Hallway) 활용
* **실제 세계 스캔 데이터 활용:**
* **파트너십:** X-Rite Pantone의 AXF 스캔 기술 활용
* **AXF 파일:** 수년간 수집한 방대한 소재 라이브러리를 디지털 외관 캡처 (스펙트럼 데이터 포함)
* **측정 장비:** Multi-angle spectrophotometer (MAT12)로 소재 분류 및 데이터 수집
* **모델:** BSDF (Bidirectional Surface Scattering Distribution Function) 기반
* **적용:** AXF 스캔 데이터가 Substrate 소재로 변환되어 파이프라인에 즉시 통합
### 1.3. Substrate 소재 적용 시 고려 사항
* **두께 (Thickness):** 레이어의 두께 정보는 소재의 코딩 및 쌓임 방식에 영향을 미치므로 중요.
* **텍스처 스케일 (Texture Scale):**
* AXF 스캔 시 원본 크기 정보 활용 가능
* 소재 타일링(Tiling) 또는 UV 스케일 조정으로 실제 세계 크기와 일치
* **투과 (Transmission):**
* 투과를 사용해야 소재가 렌더링됨 (최적화 대상에서 제외되지 않도록)
* 예시: 베이스 코트 아래의 프라이머 층을 긁힘(Scratch)으로 표현 시 중요
---
## 2. 신뢰의 기반: 참조 (Reference)
### 2.1. 물리 기반 참조 수집
* **목표:** 실제 세계의 소재, 조명, 카메라를 정확하게 재현
* **온라인 자료:**
* `physicallybased.info`: 일반적인 사물의 물리적 측정값 데이터베이스
* 제조업체 웹사이트: 제품 사양, 색상 정보
* **색 공간 (Color Space):**
* **중요성:** 모든 디스플레이 및 기기 간 색상 차이 극복
* **표준:** ACES (Academy Color Encoding System) - 미디어 및 엔터테인먼트 산업 표준
* **Unreal Engine 설정:** 텍스처, 색 공간, 프레임 버퍼 픽셀 형식 등을 정확하게 설정
* **주요 개념:**
* **Scene-Referred vs. Display-Referred:** Scene-Referred는 실제 빛 값을, Display-Referred는 최종 디스플레이 출력을 나타냄.
* **선형 색 공간 (Linear Color Space):** 계산 시 왜곡 없이 일관된 결과를 얻기 위해 필수. (기본값: sRGB Linear)
* **카메라 및 조명:**
* **카메라:** 물리적 센서 크기, 종횡비, 크롭 팩터 등 Unreal Engine에 정확히 입력
* **조명:** 실제 조명의 물리적 특성 (색온도, 루멘 등) 반영
* **측정 도구:**
* **ColorChecker Classic:** 산업 표준 도구, 참조값 활용
* **Light Meter:** 조명 측정, 럭스(Lux)와 휘도(Luminance) 이해
* **RealityScan:** 실제 환경 스캔을 통한 3D 모델 및 배경 재현
* **Spectralight QC Light Booth:** 다양한 조명 모드를 가진 표준화된 실험 환경
### 2.2. 참조 수집 방법
* **정확한 포지셔닝:** 테이프, 트라이포드 등을 사용하여 장비 위치 고정
* **다중 기록:** 조명계, 카메라 등 여러 장비를 동시에 사용하여 데이터 중복 확보
* **문서화:** 촬영 각도, 측정값 등 모든 정보 상세 기록
* **Unreal Engine 활용:**
* **측정 테이프:** 정확한 거리 및 크기 측정
* **스냅 기능:** 정밀한 객체 배치
* **소재 미리보기:** 사용자 정의 큐브맵(Cubemap) 적용하여 실제 조명 환경과 유사하게 설정
* **Pixel Inspector:** 픽셀 단위의 휘도(Luminance) 측정 (톤 매핑 전 값)
* **Virtual Production Pass-through Post Process Volume:** 후처리 효과 제거, Scene-Referred 값 확인
### 2.3. 자체 조명 키트 구축
1. **조명 촬영:** 실제 조명 자체를 촬영하여 HDR 텍스처 생성
2. **값 측정:** 조명의 물리적 특성(캔델라) 측정
3. **Unreal Engine Rect Light:** 측정한 값을 기반으로 Rect Light 설정
4. **텍스처 맵핑:** 다양한 조명 모드를 위한 텍스처 맵핑
---
## 3. 신뢰의 기반: 색상 (Color)
### 3.1. 색상 정확성 확보
* **문제점:** 눈, 카메라, 모니터 등 모든 디스플레이의 색상 표현 방식 다름
* **해결책:**
* **캘리브레이션:** 모든 디스플레이 장치 캘리브레이션 필수 (X-Rite i1 Display 등)
* **색 공간 선택:** 프로젝트 표준 색 공간(예: ACES CG, Rec.709 Linear sRGB) 명확히 정의
* **톤 매핑 (Tone Mapping):** SDR 영상, Rec.709, Scene-Referred 등 다양한 톤 매핑 적용 결과 비교
### 3.2. Scene-Referred Linear Color Pipeline
1. **카메라 설정:**
* 선형(Linear) 모드, 모든 후처리 효과 비활성화 (노출, 색 공간 등)
* RAW 파일 사용: 센서 데이터 그대로 캡처 (JPEG 등 후처리된 파일은 색상 왜곡 발생)
2. **RAW 파일 개발:**
* **도구:** RAW Therapy (흰색 균형, 노출, 톤 커브 등 모든 후처리 비활성화)
* **목표:** 센서의 광자 및 휘도 값 그대로 TIFF 또는 EXR 파일로 출력
3. **HDR 병합:**
* **도구:** Photoshop (ACES CG 등 표준 색 공간 설정)
* **주의:** 색 공간 설정 시 일관성 유지
4. **Scene-Referred HDR 생성:**
* 카메라 기반의 상대적 휘도 값을 실제 세계의 값으로 스케일링
* **측정:** Minolta LS 110 (또는 럭스 미터 + 알려진 알베도 값)을 사용하여 실제 세계 휘도 값 도출
* **공식:** 휘도(Luminance) = 럭스(Lux) \* 참조 패치 / π
* **Unreal Engine 활용:**
* HDR View: 측정값을 기반으로 스케일 팩터 계산
* Pixel Inspector: 톤 매핑 전 휘도 값 확인
### 3.3. Unreal Engine에서의 색상 관리
* **색 공간 설정:** Unreal Engine 프로젝트의 기본 색 공간 설정 (SRGB Linear Rec.709)
* **프레임 버퍼 픽셀 형식:** 높은 정밀도를 위해 Float (16-bit 또는 32-bit) 사용 권장
* **색상 선택기 (Color Picker):** sRGB 미리보기 비활성화를 통해 작업 색 공간에서의 값 확인
* **가상 프로덕션 패스스루 포스트 프로세스 볼륨:** 후처리 효과를 제거하여 Scene-Referred 값에 가까운 결과 확인
* **UE 라이트:** 물리적으로 정확한 값(캔델라) 설정 시, 실제 측정값과 일치 확인 가능
---
## 4. 신뢰의 원 만들기 (Call to Action)
* **목표:** 현실과 같은 비주얼을 통해 팀원 간의 신뢰 구축
* **실천 방안:**
1. **소재 (Substrate):** Unreal Engine의 Substrate 시스템을 활용하여 현실적인 소재 표현
2. **참조 (Reference):** 실제 세계의 소재, 조명, 카메라를 측정하고 문서화하여 정확한 참조 확보
3. **색상 (Color):** 캘리브레이션된 디스플레이와 일관된 색 공간 설정을 통해 색상 정확성 보장
* **구체적인 방법:**
* 주변의 흥미로운 조명 하나를 선택하여 Unreal Engine에서 재현
* RealityScan, Datasmith 등 도구를 활용하여 실제 환경을 3D 모델로 구현
* RAW 사진 촬영 및 Scene-Referred Linear Pipeline 적용
* **결과:**
* Scene-Referred 이미지 생성: 컴포지션 아티스트나 사진작가에게 실제 카메라와 동일하게 취급 가능
* 신뢰할 수 있는 시각적 결과물을 통한 의사 결정 과정 개선