[KOR][100]Portal-to-Reality--Fusing-Real-World-Ass

https://www.youtube.com/watch?v=4zFQTp23xY8

Frame at 0.00s
# 신뢰의 원 만들기: 현실적인 비주얼 제작을 위한 가이드 ## 소개 * **발표자:** 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 이미지 생성: 컴포지션 아티스트나 사진작가에게 실제 카메라와 동일하게 취급 가능 * 신뢰할 수 있는 시각적 결과물을 통한 의사 결정 과정 개선