블렌더 AgX로 본 렌더를 누크에서 똑같이 보려면: OCIO config 공유와 톤매핑 굽지 않기
Blender AgX로 렌더를 확인하고 승인까지 받았는데, 같은 EXR을 Nuke에서 열면 색이 다르게 보일 때가 있어요. 블렌더에서는 하이라이트가 부드럽고 채도가 자연스러웠는데, 누크에서는 밝은 부분이 거칠게 보이거나 전체 대비가 달라지는 식이죠.
이때 렌더를 다시 뽑거나 Grade로 색을 맞추기 전에 확인할 것이 있어요. 블렌더에서 승인한 화면 변환을 누크에서도 같은 조건으로 적용하고 있는지예요.
핵심은 세 가지예요.
- Blender와 Nuke가 동일한 OCIO config와 변환을 사용하도록 맞춰요.
- 렌더는 AgX 톤매핑을 굽지 않은 scene-linear OpenEXR로 전달해요.
- Nuke에서는 입력 색공간을 정확히 지정하고 Viewer에서 승인된 display/view를 재현해요.
이 글에서는 Blender에서 승인한 룩을 기록하는 단계부터 Nuke 설정, EXR 전달, 색상 불일치 진단까지 실제 파이프라인 순서로 살펴볼게요.
Blender AgX 렌더 룩이 누크에서 달라지는 이유
먼저 렌더 파일에 들어 있는 값과 모니터에 표시되는 모습을 구분해야 해요.
Blender의 AgX는 렌더 계산에 사용하는 입력 색공간이 아니라, scene-linear 이미지가 화면에 어떻게 보일지 결정하는 View Transform이에요.
Blender 4.0에서 AgX가 새 파일의 기본 View Transform으로 추가되어 Filmic을 대체한 것도 이 표시 단계에 해당해요.
합성용 렌더를 전달할 때 의도하는 구조는 다음과 같아요.
Blender 렌더
(scene-linear 데이터)
│
├── Blender 화면
│ └── AgX View Transform
│ └── 승인한 렌더 룩
│
└── OpenEXR 저장
└── scene-linear 값 유지
│
▼
Nuke Read
│
합성 작업
│
▼
Nuke Viewer
│
동일한 AgX View
│
▼
화면 확인

여기서 중요한 것은 Blender 화면에 적용된 AgX를 EXR 픽셀에 미리 굽지 않는 것이에요.
| 구분 | 역할 | 전달 시 처리 |
|---|---|---|
| Scene-linear | 렌더 계산과 합성에 쓰는 값 | EXR에 유지 |
| AgX View Transform | 화면에 보여주는 톤매핑 | Viewer에서 적용 |
| AgX Look | 승인한 룩의 대비 등 조정 | 설정 기록 후 재현 |
| Exposure | 표시 밝기에 영향을 주는 설정 | 승인 값 기록 및 확인 |
| Display | 출력 대상 디스플레이 | 양쪽에서 일치 |
| OCIO config | 색공간과 변환 정의 | 같은 버전 공유 |
같은 EXR이라도 Viewer 변환이 다르면 화면은 달라질 수 있어요. 반대로 두 화면이 비슷하게 보인다고 해서 EXR의 픽셀 값까지 같다는 뜻은 아니에요.
이 글에서 재현하려는 것은 합성용 선형 데이터를 유지하면서 Blender의 승인 뷰를 Nuke에서 다시 보는 것이에요.
1. Blender에서 승인한 색관리 설정부터 기록하기
Nuke를 설정하기 전에 Blender 프로젝트에서 승인 당시의 정보를 먼저 확보하세요.
Blender의 Color Management 설정에서 다음 항목을 확인하면 돼요.
- Blender 버전: 예를 들어 4.5.0 또는 5.2.0
- OCIO config: 기본 config인지 별도로 지정한 config인지
- Display: sRGB, Display P3 등 실제 선택값
- View Transform: AgX
- Look: AgX에 적용한 Look 이름
- Exposure: 승인 당시의 수치
- Gamma 및 추가 조정: 기본값에서 변경했는지
- 작업공간: 프로젝트에서 실제 사용하는 scene-linear 색공간
여기서 AgX라고 적어두는 것만으로는 부족해요.
예를 들어 Blender에서 sRGB Display로 승인했는데 Nuke에서는 다른 Display를 고르면, View 이름이 같아도 출력 변환은 같지 않을 수 있어요.
OpenColorIO에서는 Display가 표시 대상이고, View는 해당 Display에서 이미지를 보여주는 방법이에요. 두 항목을 한 쌍으로 기록해야 해요.
특히 Look과 Exposure는 놓치기 쉬워요. Nuke에서 AgX View만 맞추고 Blender에서 사용한 대비 Look이나 Exposure를 재현하지 않으면 승인 화면과 다른 결과가 나올 수 있어요.
다만 Blender의 Look이 Nuke Viewer에 같은 이름과 기능으로 노출되는지는 사용하는 config 및 Nuke 버전에서 확인해야 해요. 이름만 보고 임의의 Grade 값으로 대체하지 마세요.
2. Blender OCIO config를 버전까지 고정해서 공유하기
Blender OCIO config를 공유할 때 가장 중요한 조건은 단순히 config.ocio라는 이름의 파일을 전달하는 것이 아니에요.
승인에 사용한 Blender 버전의 OCIO 설정과 그 설정이 참조하는 파일을 함께 고정해야 해요.
Blender 공식 소스의 버전별 기본 config를 비교하면 차이가 확인돼요.
| Blender 버전 | OCIO profile | AgX View 정의 방식 |
|---|---|---|
| 4.0.0 | 2 | Display별 ColorSpace 직접 참조 |
| 4.2.0 | 2 | Display별 ColorSpace 직접 참조 |
| 4.5.0 | 2 | Display별 ColorSpace 직접 참조 |
| 5.0.0 | 2.4 | View Transform + Display ColorSpace |
| 5.2.0 | 2.5 | View Transform + Display ColorSpace |
Blender 4.5.0의 sRGB Display에서는 다음과 같은 정의를 사용해요.
- !<View> {name: AgX, colorspace: AgX Base sRGB}
반면 Blender 5.2.0의 sRGB Display에서는 다음처럼 View Transform과 Display ColorSpace를 별도로 지정해요.
- !<View> {name: AgX, view_transform: AgX Base Rec.1886, display_colorspace: sRGB}
같은 sRGB Display를 대상으로 하더라도 내부에서 변환을 구성하는 방식이 달라진 것이에요.
중요한 점은 Blender 4.x와 5.x가 메뉴에 AgX라는 같은 이름을 표시하더라도 내부 변환 구조는 다를 수 있다는 것이에요.
버전별 기본 정의를 확인하려면 해당 버전의 공식 config를 직접 확인하세요.
,
,
,
config.ocio 파일만 복사하면 될까?
반드시 그렇지는 않아요.
Blender의 기본 OCIO config는 LUT 파일을 참조할 수 있어요. 따라서 config.ocio만 복사하고 참조 폴더를 빠뜨리면 Nuke에서 변환을 정상적으로 로드하지 못할 수 있어요.
프로젝트에는 다음과 같이 색관리 패키지를 별도로 보관하는 편이 안전해요.
project/
ocio/
blender-version-pinned/
config.ocio
luts/
filmic/
기타 참조 파일
실제 폴더 구성은 선택한 config의 search_path와 파일 참조를 기준으로 결정하세요. 위 구조는 관리 예시이지 모든 Blender 버전에서 동일하게 요구되는 목록은 아니에요.
두 프로그램에 같은 OCIO 환경변수 적용하기
Blender와 Nuke는 OCIO 환경변수를 이용해 config 파일 경로를 지정할 수 있어요.
예를 들어 Linux에서는 다음처럼 실행 환경을 설정할 수 있어요.
export OCIO="/show/project/ocio/config.ocio"
Windows 명령 프롬프트에서는 다음과 같은 방식으로 설정할 수 있어요.
set "OCIO=D:\show\project\ocio\config.ocio"
각 명령은 해당 셸 환경에 적용하는 예시예요. 실행 환경에 따라 경로를 바꾸고, 설정된 환경을 상속받도록 Blender와 Nuke를 실행해야 해요.
Blender에는 BLENDER_OCIO라는 별도 환경변수도 있어요. 하지만 이 변수는 Blender에만 적용되므로 여러 프로그램이 공유하는 설정에는 일반적으로 OCIO를 우선 고려해요.
다만 공식 Blender 문서는 config에 따라 응용 프로그램 간 호환성 문제가 발생할 수 있다고 명시해요. 또한 Blender에 최적화된 config는 추가 요구사항을 충족해야 할 수 있어요.
Blender 공식 OCIO 환경변수와 공통 config 설명
Nuke 역시 OCIO 환경변수로 config 경로를 지정할 수 있지만, 프로젝트 설정에서 실제 선택된 config가 무엇인지 별도로 확인해야 해요.
Foundry Nuke 환경변수: OCIO config 경로
따라서 같은 환경변수를 설정한 것으로 작업을 끝내지 말고, Nuke가 실제로 config를 로드하고 필요한 View를 제공하는지 확인해야 해요.
3. OpenEXR Linear Rec.709 데이터를 그대로 전달하기
Blender에서 Nuke로 보낼 렌더는 합성용 scene-linear OpenEXR을 기준으로 준비하세요.
Blender 4.0 공식 매뉴얼은 scene-linear 공간에서 렌더링과 합성을 수행하는 것이 적합하며, 제작 중간 포맷으로 OpenEXR을 권장해요.
기본적인 전달 순서는 다음과 같아요.
- Blender의 Output Properties에서 이미지 포맷을 OpenEXR로 지정해요.
- 현재 프로젝트의 실제 EXR 출력 색공간을 확인해요.
- 합성용 파일에는 AgX를 화면 출력용으로 굽지 않아요.
- 렌더 파일과 함께 사용한 색공간 이름을 Nuke 담당자에게 전달해요.
파일 포맷 지정은 Blender의 Output Properties에서 확인할 수 있어요.
Blender 기본 config에서 scene_linear role은 일반적으로 Linear Rec.709를 가리켜요.
roles:
scene_linear: Linear Rec.709
하지만 이를 모든 Blender 렌더의 고정 규칙으로 생각하면 안 돼요.
scene_linear role이 가리키는 색공간과 실제 프로젝트의 작업공간은 사용 중인 config와 설정에 따라 달라질 수 있어요. 커스텀 OCIO config나 ACES 파이프라인이라면 해당 프로젝트에서 사용하는 색공간을 직접 확인해야 해요.
따라서 Nuke에 전달할 때는 단순히 Linear EXR이라고 적기보다 Linear Rec.709, ACEScg 등 실제 데이터에 맞는 색공간 이름을 명시하는 것이 좋아요.
View as Render는 EXR의 색공간을 바꾸는 설정일까?
아니에요. 이 기능의 목적은 불러온 이미지가 렌더처럼 표시되도록 하는 것이에요.
Blender에서는 저장된 EXR을 다시 열었을 때 해당 파일이 렌더 결과인지 일반 이미지인지 자동으로 구분하지 못할 수 있어요.
View as Render는 로드한 이미지에 렌더용 View Transform 등을 적용해 표시하도록 하는 기능이에요.
따라서 EXR을 다시 열었을 때 평평하게 보인다는 이유만으로 픽셀 데이터가 잘못 저장됐다고 판단하면 안 돼요.
파일의 scene-linear 값과 화면의 AgX 표시를 각각 확인해야 해요.
4. Nuke OCIO config와 Viewer를 Blender에 맞추기
이제 Nuke에서 받은 EXR을 확인해 볼게요.
Foundry 공식 문서에서는 프로젝트의 Color Management에서 OCIO를 선택하고, 사용할 config를 지정하도록 안내해요.
버전에 따라 설정 화면과 메뉴 구성이 달라질 수 있지만 기본적인 점검 순서는 같아요.
① Project Settings에서 OCIO 선택
Nuke에서 Project Settings를 열고 Color 탭으로 이동하세요.
Color Management를 OCIO로 설정해요.
OCIO Config에서 Blender와 공유한 설정을 지정해요.
커스텀 config를 사용하는 경우 실제 config.ocio 경로를 확인해요.
설정 변경 후 오류 또는 누락된 변환이 있는지 확인해요.
Nuke는 config에서 정의한 scene_linear role을 기본 작업공간 설정에 활용할 수 있어요.
하지만 프로젝트에서 Working Space를 따로 지정했다면 실제 선택값을 확인해야 해요.
Foundry Nuke OCIO와 Working Space 설명
② Read 노드의 입력 색공간 지정
Blender에서 받은 EXR을 Read 노드로 불러오세요.
Read의 입력 변환은 파일에 저장된 실제 색공간과 일치해야 해요.
| Blender EXR 데이터 | Nuke Read 입력 설정 |
|---|---|
| Linear Rec.709 | Linear Rec.709 |
| ACEScg | ACEScg |
| 다른 scene-linear 색공간 | 실제 사용한 해당 색공간 |
선택지의 정확한 이름은 활성화된 OCIO config에 따라 달라질 수 있어요.
Read의 입력 색공간과 Nuke의 Working Space가 같다면 색공간 간 변환이 필요하지 않아요. 서로 다르다면 Nuke가 설정에 따라 Working Space로 변환해야 해요.
주의할 점은 AgX를 Read의 입력 색공간으로 지정하지 않는 것이에요.
AgX는 승인 화면에 쓰는 View Transform이지, 기본적인 scene-linear EXR의 입력 색공간 이름이 아니에요.
③ Nuke Working Space 확인
Nuke의 Working Space는 Read를 통해 들어온 이미지를 내부에서 어떤 색공간으로 처리할지 결정해요.
이번 글의 기본 예시는 Blender에서 Linear Rec.709로 렌더한 EXR을 Nuke에서도 Linear Rec.709로 처리하는 구성이에요.
반대로 프로젝트가 ACEScg를 기준으로 작업하도록 정해져 있다면 그에 맞게 설정해야 해요.
중요한 것은 작업공간의 이름을 무조건 통일하는 것이 아니라 입력에서 작업공간으로 필요한 변환이 정확히 이루어지는지예요.
④ Viewer에서 동일한 Display와 AgX View 선택
이제 Viewer의 표시 변환을 맞추세요.
Blender에서 다음과 같이 승인했다면,
Display : sRGB
View : AgX
Look : 승인된 Look
Exposure: 승인된 값
Nuke에서도 같은 Display와 View를 사용하는지 확인해야 해요.
특히 Blender에서 사용한 Look과 Exposure까지 재현되는지 살펴봐야 해요. Nuke Viewer 메뉴에 AgX가 표시된다는 사실만으로 모든 보정 설정이 일치한다고 볼 수는 없어요.
필요한 Look이나 표시 보정이 Viewer 기능으로 재현되지 않는다면, 지원되는 OCIO 변환을 확인하고 출력에 영향을 주지 않는 검사용 분리 경로를 구성해야 해요.
또한 Nuke가 공유 config를 읽지 못하거나 필요한 Display/View를 제공하지 않는다면, 해당 Nuke 버전과 OCIO 설정의 호환성을 먼저 점검하세요.
Blender 5.x의 OCIO profile에 대한 Nuke 버전별 공식 호환성 매트릭스는 여기서 확인된 근거에 없으므로 특정 버전 조합이 반드시 작동한다고 단정할 수 없어요.
5. AgX 톤매핑은 한 번만 적용하기
여기서 가장 흔하게 피해야 할 구성이 있어요.
Blender에서 AgX를 미리 적용한 화면용 이미지에 Nuke에서 다시 AgX를 적용하는 것이에요.
잘못된 경로
Blender scene-linear
↓
AgX 톤매핑
↓
화면용으로 변환된 파일
↓
Nuke Read
↓
AgX 다시 적용
↓
이중 톤매핑
이 경우 밝은 영역의 압축이나 색의 변화가 의도와 다르게 나타날 수 있어요. 동일한 변환을 두 번 적용한 결과이므로 단순한 Exposure 조절만으로 원래의 선형 데이터를 되찾는다고 볼 수도 없어요.
정상적인 합성 전달 경로는 다음과 같아요.
권장 경로
Blender scene-linear
↓
OpenEXR
↓
Nuke Read
↓
scene-linear 합성
├── Viewer → AgX → 화면 확인
│
└── Write → scene-linear EXR
Foundry 공식 문서는 Viewer Process가 표시 전용이며 렌더 출력에 영향을 주지 않는다고 설명해요.
즉 Nuke Viewer에서 AgX로 보고 있더라도 해당 Viewer Process가 Write 파일에 자동으로 포함되는 것은 아니에요.
따라서 합성용 EXR을 저장할 때는 AgX를 노드 그래프에 불필요하게 추가하지 않는 것이 중요해요.
이미 Read에서 적절한 입력 변환이 이루어지고 있다면, 뒤에 AgX Display Transform을 추가한 다음 다시 Viewer에서 AgX를 적용하는 구성을 피하세요.
반대로 PNG나 영상처럼 화면용 결과물을 만들 때는 최종 출력 경로에 필요한 Display/View 변환을 명시적으로 한 번 적용해야 해요.
단순히 Write의 출력 색공간을 sRGB로 고르는 것과 AgX View Transform까지 적용하는 것은 같은 작업이 아닐 수 있어요. 해당 config의 출력 변환 구성을 확인해야 해요.
6. Blender와 Nuke의 화면이 실제로 일치하는지 검증하기
설정 이름을 맞춘 뒤에는 반드시 같은 EXR 파일로 비교하세요.
서로 다른 시점에 렌더한 이미지를 비교하면 색관리 이외의 차이가 섞일 수 있어요.
검증은 파일의 픽셀 데이터와 화면 표시를 분리하는 방식으로 진행하면 좋아요.
첫 번째: EXR 데이터부터 확인
Blender에서 저장한 원본 EXR을 기준 파일로 정해요.
Blender에서 다시 불러와 실제 파일 색공간과 View as Render 설정을 확인해요.
Nuke Read에서 동일한 EXR을 불러오고 입력 색공간을 지정해요.
Nuke에서 불필요한 변환 없이 작업공간의 픽셀 값을 확인해요.
Nuke Working Space가 파일 색공간과 다르다면 변환 후의 RGB 값은 달라질 수 있어요. 이 경우 값이 다르다는 사실만으로 입력 오류라고 판단하지 말고 동일 색공간으로 변환한 상태에서 비교해야 해요.
두 번째: 화면 변환 비교
동일한 EXR을 이용해 양쪽 화면에서 다음을 확인하세요.
- Blender와 Nuke의 Display가 같은가?
- AgX View가 같은 config에서 정의되었는가?
- Look이 일치하는가?
- Exposure와 추가 조정이 일치하는가?
- Nuke에서 추가적인 Viewer LUT나 색변환이 적용되지 않았는가?
비교 대상은 중성 회색, 피부색 또는 중간 채도의 물체, 강한 색상의 광원, 밝은 하이라이트처럼 차이가 드러나는 영역으로 잡으면 좋아요.
이 항목들은 확인할 대상이지 특정 결과가 반드시 발생한다는 테스트 기록은 아니에요.
세 번째: 디스플레이 경로 확인
OCIO 설정이 같아도 실제 모니터 표시까지 항상 일치하는 것은 아니에요.
모니터의 색역, OS 색관리, HDR 설정, 앱의 디스플레이 처리 경로가 다르면 화면 차이가 남을 수 있어요.
그러므로 먼저 같은 장비에서 두 프로그램의 표시를 비교하고, 이후 다른 모니터나 작업실 환경에서도 확인하는 순서가 합리적이에요.
7. 색이 다를 때 확인할 문제별 진단표
Nuke에서 Blender 승인 룩과 다른 화면이 나타난다면 다음 순서로 원인을 좁혀 보세요.
| 증상 | 먼저 확인할 항목 | 조치 |
|---|---|---|
| 전체 색과 대비가 다름 | OCIO config 경로와 버전 | Blender 승인 config와 동일한지 확인 |
| 전체적으로 밝거나 어두움 | Exposure, View, Look | 승인 설정을 대조 |
| 하이라이트 처리가 다름 | AgX View, 추가 톤매핑 | Display Transform 중복 여부 확인 |
| 색상이 크게 틀어짐 | Read 입력 색공간 | EXR 실제 색공간과 비교 |
| AgX 메뉴가 없거나 오류 발생 | Config 로드, 참조 파일, 호환성 | LUT 경로와 OCIO 지원 여부 점검 |
| 동일 설정인데 모니터마다 다름 | Display, OS, 모니터 설정 | 디스플레이 경로 점검 |
진단할 때는 한꺼번에 여러 설정을 수정하지 마세요.
먼저 config가 같은지 확인하고, 그다음 입력 색공간과 작업공간을 살펴보세요. 파일 해석이 맞다면 Viewer의 Display/View, Look, Exposure 순서로 점검하면 돼요.
특히 파일 데이터는 정상인데 화면만 다른 경우라면 Read 입력을 반복해서 바꾸기보다 표시 경로를 확인하는 것이 우선이에요.
반대로 Read에서 이미 잘못된 색변환이 이루어졌다면 Viewer에서 AgX를 맞추는 것만으로 문제를 해결할 수 없어요.
OCIO의 역할과 색공간 변환 경계를 더 자세히 살펴보려면 관련 개념을 먼저 확인할 수 있어요.
OpenColorIO가 VFX 색관리에서 담당하는 역할
8. 합성용 EXR과 최종 납품용 이미지의 출력 경로 구분하기
마지막으로 Nuke에서 어떤 결과물을 전달할지 정해야 해요.
합성 단계에서 계속 작업할 파일과 최종 감상용 결과물은 출력 목적이 달라요.
| 출력 목적 | 권장 처리 |
|---|---|
| 합성 중간 EXR | 합의된 scene-linear 색공간 유지 |
| 다른 합성자에게 전달하는 EXR | 색공간과 OCIO config 정보 함께 전달 |
| AgX 룩이 적용된 검토용 PNG | 최종 출력에 Display/View 적용 |
| 최종 표시용 영상 | 목표 디스플레이에 맞는 변환을 출력 단계에 적용 |
화면용 파일을 만들 때는 Viewer Process만 켜놓는 것으로 끝내면 안 돼요.
반대로 합성용 OpenEXR이라면 승인 화면처럼 보이게 만들겠다는 이유로 AgX를 픽셀 값에 굽지 마세요.
최종적으로는 두 종류의 결과를 구분해서 관리하는 편이 좋아요.
합성 마스터: 선형 값을 보존한 EXR
검토·표시용 결과물: 승인된 Display/View가 적용된 출력
EXR을 중간 포맷으로 사용하는 이유와 PNG와의 차이는 별도로 확인할 수 있어요.
또한 합성 결과를 받은 플레이트와 같은 인코딩으로 되돌려보내야 하는 작업은 AgX 뷰 재현과 구분해서 관리해야 해요.
작업자가 전달 전에 확인할 체크리스트
Blender에서 Nuke로 렌더를 넘기기 전에 다음 항목을 확인해 보세요.
- Blender 버전과 승인에 사용한 OCIO config를 기록했어요.
- Display, AgX View, Look, Exposure를 기록했어요.
- config.ocio와 필요한 LUT·참조 파일을 함께 보관했어요.
- OpenEXR이 실제로 어떤 scene-linear 색공간에 저장됐는지 확인했어요.
- Nuke 프로젝트가 동일한 OCIO config를 읽고 있어요.
- Read 입력 색공간과 Nuke Working Space를 확인했어요.
- Viewer에서 승인된 Display/View를 재현했어요.
- AgX를 노드 그래프와 Viewer에서 중복 적용하지 않았어요.
- 같은 EXR로 데이터와 화면 표시를 각각 비교했어요.
- 합성용 EXR과 화면용 출력의 Write 경로를 구분했어요.
Blender AgX 렌더를 Nuke에서 재현하는 핵심은 누크에서 색을 다시 보정하는 것이 아니에요. Blender에서 승인에 사용한 변환 조건을 정확히 전달하고, 동일한 변환을 Nuke의 올바른 단계에서 적용하는 것이에요.
Blender와 Nuke가 같은 OCIO config를 사용하고, EXR의 입력 색공간이 올바르며, Viewer의 Display/View와 추가 룩 설정이 일치한다면 승인 화면을 재현할 수 있는 조건이 갖춰져요.
다만 프로그램 버전이나 모니터 환경까지 다를 수 있으므로 최종 일치는 실제 화면 비교로 확인해야 해요.
Blender 안에서 AgX, Filmic, Standard 중 어떤 View를 선택할지는 별도의 문제예요. 이 글에서는 선택한 룩을 합성 파이프라인으로 정확히 전달하는 과정에 집중했어요.
vfx 잡학지식

댓글 0
첫 댓글을 남겨보세요.