렌더 패스와 출력
Deferred Rendering 패스, Stencil 마스크, EXR 멀티채널 출력을 활용한 합성 워크플로를 마스터합니다
렌더 패스 종류
MRQ/MRG에서 사용 가능한 렌더 패스
| 렌더 패스 | 출력 | 합성 용도 |
|---|---|---|
| Final Image (Beauty) | 최종 렌더링 이미지 | 기본 출력, 직접 사용 |
| World Normal | 월드 공간 노말 벡터 | 리라이팅, 디테일 보정 |
| World Depth (Z-Depth) | 카메라 거리 정보 | 포스트 DOF, 안개, 거리 기반 이펙트 |
| Base Color | 조명 전 알베도 색상 | 색보정, 리라이팅 |
| Metallic / Roughness / Specular | PBR 머티리얼 채널 | 리라이팅 파이프라인 |
| Custom Stencil | 오브젝트 마스크 (Stencil ID) | 개별 오브젝트 선택/분리 |
| Object ID | 오브젝트별 고유 색상 | 크립토매트(Cryptomatte) 대안 |
| Ambient Occlusion | AO 패스 | 접촉 그림자 보정 |
World Normal, Base Color 등 추가 패스를 사용하려면 "Movie Render Queue Additional Render Passes" 플러그인을 활성화해야 합니다. Edit → Plugins에서 검색하여 활성화합니다.
EXR 멀티레이어 출력
단일 파일에 여러 패스 저장하기
OpenEXR 포맷은 단일 파일에 여러 채널/레이어를 저장할 수 있습니다. MRQ/MRG에서 Multi-Layer EXR로 출력하면 Beauty + Depth + Normal 등을 하나의 .exr 파일에 담을 수 있어 합성 소프트웨어에서 편리합니다.
EXR 출력 설정
| 설정 | 옵션 | 설명 |
|---|---|---|
| Bit Depth | 16-bit Half / 32-bit Float | 16-bit는 대부분 충분, 32-bit는 Depth/Position용 |
| Compression | None / ZIP / DWAA / DWAB | DWAA가 크기-품질 균형 최적 |
| Multi-Layer | On / Off | 여러 패스를 단일 파일에 저장 |
| Include Alpha | On / Off | 알파 채널 포함 (투명 배경) |
// Multi-Layer EXR 채널 구조
// filename.0001.exr
// ├── RGBA (Beauty - 최종 이미지)
// │ R, G, B, A
// ├── WorldNormal
// │ WorldNormal.R, WorldNormal.G, WorldNormal.B
// ├── WorldDepth
// │ WorldDepth.R
// ├── BaseColor
// │ BaseColor.R, BaseColor.G, BaseColor.B
// └── CustomStencil
// CustomStencil.R
// Nuke에서:
// Read 노드 → Shuffle 노드로 원하는 레이어 분리
// After Effects에서:
// EXtractoR 플러그인으로 레이어 접근
DWAA 압축은 손실 압축이지만 시각적으로 거의 무손실이며, 파일 크기를 None 대비 50~80% 줄입니다. Beauty 패스에는 DWAA, Depth/Normal 등 정밀한 데이터에는 ZIP(무손실)을 사용하는 것이 좋습니다.
Stencil 마스크 워크플로
Custom Stencil을 활용한 오브젝트 분리
Custom Stencil 설정
- Project Settings → Rendering →
Custom Depth-Stencil Pass를 "Enabled with Stencil"로 설정 - 분리할 액터의 메시 컴포넌트에서
Render CustomDepth Pass체크 CustomDepth Stencil Value에 고유 값 할당 (0~255)- MRQ/MRG에서 Custom Stencil 패스 추가
// 액터의 메시에 Stencil 값 할당
UStaticMeshComponent* MeshComp = Actor->FindComponentByClass<
UStaticMeshComponent>();
MeshComp->SetRenderCustomDepth(true);
MeshComp->SetCustomDepthStencilValue(1); // 캐릭터: 1
// 배경 오브젝트는 다른 값
BGMesh->SetCustomDepthStencilValue(2); // 배경: 2
FXMesh->SetCustomDepthStencilValue(3); // 이펙트: 3
합성 소프트웨어에서 활용
Custom Stencil 패스의 각 픽셀에는 Stencil 값이 그레이스케일로 저장됩니다. 합성 소프트웨어에서 특정 값으로 마스크를 생성하여 개별 오브젝트를 선택/편집합니다.
합성 파이프라인 연동
Nuke, After Effects, DaVinci Resolve 연동
합성 소프트웨어별 워크플로
Nuke (영화/VFX)
- EXR Multi-Layer 네이티브 지원
- Shuffle/ShuffleCopy로 레이어 분리
- Deep Compositing 가능
- ACES 색공간 호환
After Effects (모션그래픽)
- EXtractoR로 EXR 채널 접근
- PNG 시퀀스 + 알파 권장
- ProRes 4444로 알파 포함 영상
- sRGB 작업공간
DaVinci Resolve (편집/그레이딩)
- EXR 시퀀스 직접 임포트
- ACES / DaVinci Wide Gamut
- Fusion 탭에서 합성
- ProRes/DNxHR 입출력
UE5는 기본적으로 sRGB 색공간에서 렌더링합니다. ACES 워크플로를 사용하려면 Project Settings → Rendering → OCIO Configuration을 설정하고, EXR 출력 시 Linear 색공간으로 저장해야 합니다. 합성 소프트웨어에서도 동일한 OCIO 설정을 적용하세요.
핵심 요약
- MRQ/MRG는 Beauty, World Normal, Depth, Base Color, Custom Stencil, Object ID 등 다양한 렌더 패스를 지원한다
- Multi-Layer EXR로 여러 패스를 단일 파일에 저장하여 합성 워크플로를 간소화한다
- EXR 압축은 Beauty에 DWAA, 정밀 데이터에 ZIP을 권장한다
- Custom Stencil(0~255)로 오브젝트별 마스크를 생성하여 합성 시 개별 제어한다
- Nuke(EXR 네이티브), After Effects(EXtractoR/PNG), DaVinci Resolve(EXR+Fusion)로 합성한다
- 색공간 일관성(sRGB/ACES)을 렌더-합성 파이프라인 전체에서 유지해야 한다
도전 과제
배운 내용을 직접 실습해보세요
Final Color, World Normal, Scene Depth, Custom Stencil 패스를 각각 활성화하고 렌더링하세요. 각 패스 출력 이미지를 확인하고 합성 활용법을 이해하세요.
Custom Stencil Value로 캐릭터, 배경, 이펙트를 각각 다른 ID로 분리하세요. Object ID 패스로 렌더링하여 합성 시 마스킹 가능한 멀티 패스 출력을 생성하세요.
시네마틱을 Beauty + Depth + Normal + Motion Vector + Object ID 5가지 패스로 렌더링하세요. 외부 합성 소프트웨어에서 DOF, Fog, Color Grading을 후처리하는 VFX 파이프라인을 구성하세요.