Maya에서 프로젝트 설정을 만지다가 Color Management를 ACES로 바꾸는 순간, 갑자기 화면 색이 확 달라져서 당황했던 경험 있으신가요? 이건 마야 ACES 색 이상처럼 보이지만 사실 대부분 정상 동작입니다.
마야 ACES 색 이상, 왜 갑자기 색이 달라질까
Maya의 Color Management 설정에는 크게 두 가지 축이 있습니다. 하나는 이미지 파일이나 렌더 결과를 “어떤 색공간의 데이터로 볼 것인가”를 정하는 부분이고, 다른 하나는 그 데이터를 화면에 “어떻게 보여줄 것인가”를 정하는 부분입니다. 후자를 흔히 뷰 트랜스폼(View Transform), 또는 출력 변환(Output Transform)이라고 부르는데요, 쉽게 말하면 카메라로 찍은 원본 필름을 인화할 때 쓰는 “인화지 종류”라고 생각하면 됩니다. 같은 필름이라도 어떤 인화지를 쓰느냐에 따라 사진 느낌이 완전히 달라지는 것처럼, 같은 렌더 데이터라도 뷰 트랜스폼이 바뀌면 화면에 보이는 색이 완전히 달라집니다.
기본 sRGB 환경에서는 이 뷰 트랜스폼이 “sRGB gamma”라는 단순한 변환을 씁니다. 데이터 값을 그대로 밝기 곡선 하나로만 바꿔서 보여주는 방식이라, 색이 상당히 쨍하고 선명하게 나옵니다. 반면 ACES로 바꾸면 이 자리에 RRT(Reference Rendering Transform)와 ODT(Output Device Transform)라는 조합이 들어갑니다. 이름이 어렵지만 역할은 간단합니다. RRT는 “이 장면을 영화관에서 보기 좋게 다듬어주는 필터”이고, ODT는 “그 결과를 지금 쓰는 모니터에 맞게 최종 변환해주는 어댑터”입니다. 이 조합이 sRGB gamma보다 훨씬 정교하게 하이라이트와 채도를 다루기 때문에, 같은 렌더 데이터인데도 화면에 보이는 인상이 크게 달라지는 것입니다.
“색이 바랬다·뿌옇다·채도가 죽었다” 증상별 원인
ACES를 켠 뒤 가장 많이 나오는 하소연이 세 가지입니다. 각각 원인이 조금씩 다릅니다.
색이 바랜 것처럼 보인다: 이건 대부분 ACES RRT의 필름 룩 롤오프(highlight rolloff) 때문입니다. 밝은 부분이 갑자기 하얗게 날아가지 않고 부드럽게 눌리도록 설계되어 있어서, sRGB gamma에 익숙한 눈에는 전체적으로 “탁하다”거나 “바랬다”는 인상을 줍니다.
뿌옇게 느껴진다: 텍스처나 배경 이미지를 불러올 때 색공간 태그가 잘못 지정된 경우가 많습니다. 예를 들어 이미 sRGB로 인코딩된 JPG를 Raw(가공 없이 있는 그대로)로 읽어버리면 감마가 이중으로 적용되지 않아 흐릿하고 밋밋하게 보입니다.
채도가 죽어 보인다: ACES의 색역(color gamut)이 넓은 대신 RRT가 채도를 다루는 방식 자체가 sRGB와 다릅니다. 특히 원색에 가까운 강한 색상을 쓸 때 이 차이가 두드러지는데, 이는 색이 잘못 나온 게 아니라 더 넓은 색 공간을 촘촘하게 압축하는 과정에서 나타나는 자연스러운 결과입니다.
| 증상 | 흔한 원인 | 해결 방향 |
|---|---|---|
| 색이 바래 보임 | RRT의 필름 룩 하이라이트 롤오프 | 의도된 동작, 룩 개발로 보완 |
| 이미지가 뿌옇고 흐릿함 | 텍스처 입력 색공간 오지정(Raw/sRGB 혼동) | 텍스처별 색공간 재확인 |
| 채도가 낮아 보임 | ACES 색역 압축 특성 | LMT·룩업테이블로 취향 보정 |
| 라이트 색이 이상함 | 뷰 트랜스폼 변경으로 인한 표시 차이 | 실제 데이터는 동일, 비교 기준 재설정 |
| sRGB 프로젝트 이관 후 톤 붕괴 | 기존 텍스처·룩이 sRGB gamma 기준으로 맞춰짐 | 전체 색공간 재점검 및 룩 재조정 |
필름 룩 롤오프는 버그가 아니라 의도입니다
여기서 꼭 짚고 넘어가야 할 부분이 있습니다. ACES RRT의 하이라이트 롤오프는 버그가 아니라 필름 카메라의 특성을 흉내 낸 의도적인 설계입니다. 디지털 센서는 특정 밝기를 넘으면 값이 뚝 끊기듯 하얗게 날아가지만, 실제 필름은 밝은 영역으로 갈수록 색이 서서히 눌리면서 부드럽게 흰색에 수렴합니다. ACES는 이 필름 특유의 느낌을 재현하기 위해 일부러 이런 곡선을 넣어둔 것입니다. 그러니 “색이 이상하게 나왔다”기보다는 “영화적인 톤으로 다시 해석됐다”고 이해하시는 편이 정확합니다.
라이트 색과 머티리얼 값은 그대로인데 결과가 달라지는 이유
많은 분들이 “라이트 컬러 값도 안 건드렸고 머티리얼 컬러 값도 그대로인데 왜 결과가 다르냐”고 묻습니다. 답은 간단합니다. 라이트나 머티리얼에 입력한 숫자 값 자체는 씬 안의 실제 데이터이고, 이 데이터는 ACES를 켜도 전혀 바뀌지 않습니다. 바뀌는 건 오직 그 데이터를 화면에 “보여주는 방식”뿐입니다. 즉 원본 사진 파일은 그대로 있는데, 그 사진을 어떤 필터를 씌운 액자에 넣어 전시하느냐가 달라진 셈입니다. 그래서 렌더링 결과물(예: EXR)의 실제 픽셀 값을 비교해보면 동일하지만, 모니터에 뜨는 이미지는 다르게 보이는 것입니다. 이 차이를 이해하지 못하면 “라이트를 잘못 세팅했나?”하고 애꿎은 곳을 고치게 되니 주의가 필요합니다.
기존 sRGB 프로젝트를 ACES로 옮길 때 생기는 문제
이미 sRGB 기반으로 오랫동안 작업해온 프로젝트를 중간에 ACES로 전환하면 골치 아픈 상황이 자주 생깁니다. 기존에 만들어둔 룩, 텍스처 톤, 라이팅 세팅이 전부 sRGB gamma 뷰 트랜스폼을 기준으로 눈으로 맞춰진 것이기 때문입니다. 뷰 트랜스폼만 ACES로 바꾸면 그동안 눈대중으로 맞춰온 밸런스가 한꺼번에 무너집니다. 특히 여러 샷을 이미 컨펌받은 상태에서 파이프라인 중간에 전환하면, 새로 렌더링되는 샷과 기존 컨펌 샷 사이에 톤이 안 맞아 재작업이 크게 늘어날 수 있습니다. 그래서 ACES 도입은 프로젝트 초반, 가급적 색공간 표준을 확정하는 단계에서 결정하는 것이 안전합니다.
마야 ACES 색 이상 점검 체크리스트
색이 이상하다고 느껴질 때는 순서대로 아래 항목을 확인해보세요.
- 뷰 트랜스폼 확인: Preferences > Color Management 계열 메뉴에서 현재 View Transform이 무엇으로 설정되어 있는지 확인합니다. sRGB gamma와 ACES 계열(RRT+ODT 혹은 Output – sRGB 같은 이름)이 섞여 있지 않은지 살펴봅니다.
- 텍스처 입력 색공간 확인: 각 텍스처 노드에서 컬러 텍스처(디퓨즈, 베이스컬러 등)는 보통 sRGB, 데이터성 텍스처(노멀맵, 러프니스 등)는 Raw로 지정되어 있는지 확인합니다.
- 렌더 뷰 설정 확인: 렌더 뷰(Render View)나 뷰포트에 적용된 색공간 설정이 실제로 사용 중인 OCIO 컨피그와 일치하는지 확인합니다.
- 출력 파일 색공간 확인: 최종 렌더를 저장할 때 EXR은 보통 Linear/ACEScg로, 리뷰용 JPG나 PNG는 뷰 트랜스폼이 적용된 색공간으로 저장되는지 확인합니다.
이 네 단계를 순서대로만 짚어봐도 색이 이상해 보이는 원인의 대부분을 찾아낼 수 있습니다.
언제는 ACES를 안 쓰는 게 나을까
ACES가 항상 정답은 아닙니다. 짧은 모션그래픽이나 간단한 룩업, 혹은 파이프라인 인력이 소수라 색관리 표준을 새로 학습할 여유가 없는 소규모 프로젝트라면 오히려 익숙한 sRGB 기반 워크플로우가 더 효율적일 수 있습니다. 또한 합성 단계가 짧고 여러 소프트웨어를 오가지 않는 단발성 작업에서는 ACES가 주는 이점(넓은 색역, 다양한 카메라·디스플레이 간 일관성)을 충분히 활용하기 어렵습니다. 반대로 여러 부서, 여러 소프트웨어를 거치는 장기 프로젝트라면 ACES의 일관된 색관리 구조가 훨씬 큰 힘을 발휘합니다.
자주 묻는 질문(FAQ)
Q1. ACES를 켜면 렌더 시간이 더 오래 걸리나요? 아닙니다. ACES는 색을 표시하고 저장하는 방식에 관한 규칙일 뿐, 렌더 연산 자체의 복잡도를 크게 늘리지 않습니다. 렌더 시간은 주로 샘플링이나 라이트 세팅에 좌우됩니다.
Q2. 색이 이상해 보이면 그냥 뷰 트랜스몸만 sRGB로 되돌리면 되나요? 그렇게 하면 화면은 익숙해 보이지만 프로젝트 전체가 ACES 표준을 따르는 상황이라면 다른 작업자와 결과물이 어긋날 수 있습니다. 임시 확인용으로는 괜찮지만 최종 결정 전에는 팀 전체의 색관리 기준과 맞춰야 합니다.
Q3. 노멀맵이나 러프니스맵도 ACES 영향을 받나요? 데이터성 맵은 색을 표현하기 위한 것이 아니라 값 자체가 계산에 쓰이므로 Raw로 지정해야 하며, 이렇게 설정하면 뷰 트랜스몸 변경의 영향을 거의 받지 않습니다. 다만 색공간 태그가 잘못되어 있으면 ACES 전환 시 문제가 더 두드러지게 나타날 수 있습니다.
