컬러 그레이딩 및 필름 톤매퍼

씬 컬러 조정을 위한 톤매핑과 색 보정 이펙트입니다.

Windows
MacOS
Linux

ColorGrading_Overview.png

컬러 그레이딩 툴은 씬의 모습과 톤을 바꿀 수 있도록 해줍니다. 이 예제에서는 다양한 씬 컬러를 사용한 씬을 보여주고 있습니다.

언리얼 엔진에서, Color Grading (컬러 그레이딩)이란 용어는 하이 다이내믹 레인지 (HDR) 디스플레이 출력 과 함께 사용되는 톤 매핑 함수(HDR 에서 LDR 로 변환) 에 더해 이미지의 색 보정(LDR 컬러에서 스크린 컬러로 변환) 처리까지 아우릅니다.

톤 매핑

Tone Mapping (톤 매핑) 함수의 목적은 하이 다이내믹 레인지(HDR) 컬러 큰 범위를 디스플레이가 출력할 수 있는 로우 다이내믹 레인지(LDR) 컬러의 작은 범위로 매핑시키는 것입니다. 포스트 프로세싱 도중 보통 렌더링 이후 벌어지는 포스트 프로세싱 마지막 단계입니다. 톤 매핑 프로세스는 필름이 빛에 반응하는 것을 시뮬레이션하기 위한 방편으로 생각해 볼 수 있습니다.

Academy Color Encoding System (ACES) 필름 톤매퍼

언리얼 엔진 4 에 사용된 필름 톤매퍼는 Academy Color Encoding System (ACES) 가 TV 와 영화용으로 정한 업계 표준에 일치합니다. 다양한 포맷과 디스플레이에 걸쳐 색 일관성을 보존할 수 있으면서, 매체가 달라져도 조정할 필요 없도록 해주는 소스 머티리얼 미래 보증 역할을 하기도 합니다. 이 톤매퍼는 기존에 사용된 글로벌 톤매퍼 함수를 거의 그대로 사용하지만, 필름 반응이 있다는 점이 다릅니다. S 커브가 영화 필름에 더욱 잘 맞아 전반적인 모습이 나아보인다는 뜻입니다.

차이를 바로 느낄 수 있는 부분은 블룸(Bloom)과 노출 수준(Exposure Level)입니다.

물리적으로 정확한 이미시브와 블룸

이미시브 값이 이제 물리적으로 정확하여, 현실 세계에서 컬러 라이트의 작동 방식과 비슷하게 이미시브 파워가 상승하면 컬러도 밝아집니다. 컬러에 톤 매핑이 적용되면서, 최종 컬러가 필름 / 센서 채도를 넘칠 정도로 밝으면 하얗게 변할 것입니다.

필름 톤매퍼 | 이미시브

레거시 톤매퍼 | 이미시브

이 예제에서 레거시 톤매퍼와 새로운 필름 톤매퍼를 비교하고 있습니다. 이미시브 파워가 충분히 높으면, 색이 하얘지기 시작합니다. 레거시 톤매퍼에서는 머티리얼 일부의 채도가 심하게 높아져 디테일이 사라지던 것과는 다릅니다. 심지어 블룸이 있는 이 씬의 물리적 정확도가 유지될 뿐만 아니라 채도가 심하게 높아지지도 않아, 반사되는 주 컬러 값이 유지됩니다.

노출 수준

노출 수준이 이제 물리적으로 정확하여 디테일을 잃지 않고 모양이 유지됩니다.

Exposure_Default.png

이 예제에는, 다양한 색은 물론 러프니스와 메탈릭 값도 각기 다른 머티리얼들이 있습니다. Exposure Bias 역시 0 으로 설정되어 있습니다.

필름 톤매퍼 | Exposure Bias: 3

레거시 톤매퍼 | Exposure Bias: 3

이 비교에서, Exposure Bias 를 3 으로 올리니 레거시 톤매퍼 구현에 비해 필름 톤매퍼의 반응이 정말 잘 드러나 보입니다. 또한, 3 이라는 값의 뜻은 위의 이전 예제에 표시된 0 이라는 기본값보다 처리된 이미지가 8 배 밝다는 뜻입니다.

노출 수준 값이 높아질 수록 필름 / 레거시 톤매퍼 간의 차이가 명확해집니다. 필름 톤매퍼의 구체는 더욱 밝은데도 불구하고 컬러와 셰이딩 셰이프가 계속 유지되어 보입니다. 레거시 톤매퍼를 사용하는 구체는 컬러가 셰이딩과 블렌딩되기 시작합니다. 그 구체가 단색으로 정말 밝아지기는 하지만, 노출 값이 높다고만은 할 수 없습니다. 반면 필름 톤매퍼는 이 부분을 고려하여 노출 값을 올렸을 때 실제 카메라와 비슷한 효과를 내도록 하고 있습니다.

레거시 톤매퍼

언리얼 엔진 4.15 이후 ACES 표준을 사용하는 필름 톤매퍼가 기본 활성화됩니다. 이 변화로 인해 기존 콘텐츠의 모습에 차이가 생길 수 있습니다. 레거시 톤매퍼를 제거하려는 계획은 없지만, 언젠가는 폐기 및 제거될 것입니다.

비교를 위해 에픽게임즈 런처의 학습 탭에서 받을 수 있는 태양의 사원 예제 프로젝트에서 스크린샷을 찍어 봤습니다.

레거시 톤매퍼

필름 톤매퍼

프로젝트에 레거시 톤매퍼 모습을 유지하려면, 포스트 프로세스 볼륨을 배치하고 Film 섹션 아래 다음과 같이 설정할 것을 권장합니다:

  • Slope: 0.98

  • Toe: 0.3

  • Shoulder: 0.22

  • Black Clip: 0

  • White Clip: 0.025

레거시 톤매퍼

필름 톤매퍼에 레거시 톤매퍼 값 적용

톤매퍼 세팅

Post Process Volume 의 Tonemapper 섹션에는 ACES 표준 필름에 맞는 프로퍼티를 찾을 수 있습니다. 이 톤매퍼 컨트롤을 조절하면 프로젝트에 다른 영화같은 같은 느낌을 모방할 수 있습니다.

이 프로퍼티들은 특정한 외양을 위해 프로젝트 단위로만 사용하고, 동적으로 또는 샷 단위로 변경하지는 않는 것이 좋습니다. 미적인 조정을 가하는 데는 컬러 그레이딩 프로퍼티를 사용해야 합니다.

ToneMapperProperties.png

프로퍼티

설명

Tonemapper

Slope

경사 - 톤매퍼에 사용되는 S 커브의 경사를 조절합니다. 값이 크면 경사가 심해(어두워)지고 낮으면 덜해(밝아)집니다. 값 범위는 [0.0, 1.0] 입니다.

Slope: 0.88 (기본값)

Slope: 0.6

Slope: 0.88 (기본값)

Slope: 0.6

Toe

발끝 - 톤매퍼의 어두운 색을 조절합니다. 값 범위는 [0.0, 1.0] 입니다.

Toe: 0.55 (기본값)

Toe: 0.8

Toe: 0.55 (기본값)

Toe: 0.8

Shoulder

어깨 - 톤매퍼의 밝은 값을 조절합니다. 값 범위는 [0.0, 1.0] 입니다.

Shoulder: 0.26 (기본값)

Shoulder: 1

Shoulder: 0.26 (기본값)

Shoulder: 1

Black Clip

검정 클립 - 검정 값이 잘려나가기 시작하는 크로스오버 부분을 설정합니다. 일반적으로 이 값을 조절해서는 안됩니다. 값 범위는 [0.0, 1.0] 입니다.

Black Clip: 0 (기본값)

Black Clip: 0.1

Black Clip: 0 (기본값)

Black Clip: 0.1

White Clip

하양 클립 - 하양 값이 잘려나가기 시작하는 크로스오버 부분을 설정합니다. 대부분 미묘한 변화로 나타납니다. 값 범위는 [0.0, 1.0] 입니다.

White Clip: 0.04 (기본값)

White Clip: 0.2

White Clip: 0.04 (기본값)

White Clip: 0.2

위와 같은 실시간 그래프에서 다른 톤매퍼 값을 테스트하려면, UE4 톤매퍼 예제 기본 구성에서 가능합니다.

색 보정

Color correction (색 보정) 또는 컬러 그레이딩은 씬의 라이트 전반적인 색을 변경 또는 강화시키는 데 사용됩니다. HDR 디스플레이의 출현으로, 어떤 디스플레이 유형에서도 색이 제대로 표시되도록 하기 위해 처리 전 원래 색을 보존하는 것이 가장 중요해 졌습니다.

과거에, 색 보정은 룩업 테이블 (LUT) 을 통해 구현하여, sRGB 컬러 스페이스에서 모니터에 출력되는 최종색 및 LDR 에서 일어나는 일이었습니다. 이는 HDR 디스플레이 작업을 할 때 문제가 생기는데, LUT 는 조정 대상이 되는 현재 지원 디스플레이 시점에서의 스냅샷일 뿐이라 HDR 디스플레이에서 같은 이펙트에 사용할 수 없기 때문입니다. 이러한 문제 해결을 위해, 색 보정 프로퍼티 는 흔히 Scene Referred Linear Space 라는 곳에서 작동하여, 톤매퍼 적용 전 모든 컬러를 캡처합니다. 즉 하나의 HDR 디스플레이에서만 색 조정 작업을 해 주면 HDR 이든 LDR 이든 상관 없이 어떤 유형의 출력 디스플레이에도 똑같아 보이도록 만들 수 있다는 뜻입니다.

콘텐츠의 이점을 살리기 위해 HDR 파이프라인 및 그 작동방식에 대해 더욱 자세히 알아보려면, 하이 다이내믹 레인지 디스플레이 출력 문서를 참고하시기 바랍니다.

색 보정 프로퍼티

Post Process Volume 의 Color Grading 섹션에서는 씬의 미적인 부분을 제어할 수 있는 프로퍼티를 찾을 수 있습니다.

세팅

RGBColorWheel.png

HSVColorWheel.png

RGB

HSV

각 섹션 아래, 색상환을 사용하여 컬러 값을 선택하고 끌어놓을 수 있습니다. 다음 모드 중에서 선택할 수도 있습니다:

  • RGB - Red(빨강), Green(초록), Blue(파랑) 값을 조절합니다.

  • HSV - Hue(색상), Saturation(채도), Value(명도) 값을 조절합니다.

슬라이더 값의 보다 정교한 제어는 Shift 드래그로 가능합니다.

ColorGradingProperties.png

프로퍼티

설명

White Balance

이 섹션의 프로퍼티는 하양이 진짜 하양으로 보이도록 씬의 컬러를 조정하는 데 사용됩니다. 씬의 다른 컬러가 씬의 주어진 라이팅에 제대로 라이팅되도록 해줍니다.

Temp

온도 - 씬에 있는 라이트의 온도에 관련된 화이트 밸런스를 조정합니다. 라이트 온도와 이것이 일치하면 라이트가 하얗게 보일 것입니다. 씬의 라이트보다 높은 값이 사용되면, "따듯한" 또는 노랑색이, 반대로 낮은 값이 사용되면 "차가운" 또는 파랑색이 나올 것입니다.

Tint

색조 - 시안과 마젠타 색 범위를 조절하여 씬의 화이트 밸런스 온도 색조를 조절합니다. 이상적으로, 화이트 밸런스 Temp 프로퍼티를 조정하여 정확한 값을 구했을 경우에 이 세팅을 사용해야 합니다. 어떤 라이트 온도에서는 색이 보다 노랑 또는 파랑으로 보일 수 있습니다. 이 옵션을 사용하여 결과색이 보다 자연스러워 보이도록 밸런스를 잡을 수 있습니다.

Global

이 섹션의 프로퍼티는 전체 씬에 사용할 수 있는 색 보정 글로벌 세트입니다.

Saturation

채도 - 표현되는 색(색상)의 세기(순도)를 조절합니다. 채도 값이 높으면 보다 (빨강, 초록, 파랑) 원색에 가까운 식으로 나타나며, 채도가 낮으면 회색이 섞여 탁한 또는 탈색된 것처럼 보이게 됩니다.

Contrast

대비 - 씬의 밝고 어두운 색 값의 색조 범위를 조정합니다. 세기를 낮추면 하이라이트가 없어지고 이미지가 밝아져 탈색된 것처럼 보이는 반면, 높이면 하이라이트가 타이트해지고 이미지가 전반적으로 어두워집니다.

Gamma

감마 - 이미지의 중간톤 휘도를 조정하여 보다 정확한 색을 재현해 냅니다. 이 값을 낮추거나 높이면 이미지가 탈색 또는 너무 어두워 보이게 됩니다.

Gain

이득 - 이미지의 하양(하이라이트) 휘도를 조정하여 보다 정확한 색을 재현해 냅니다. 이 값을 낮추거나 높이면 이미지 하이라이트가 탈색 또는 너무 어두워 보이게 됩니다.

Offset

오프셋 - 이미지의 검정(그림자) 휘도를 조정하여 보다 정확한 색을 재현해 냅니다. 이 값을 낮추거나 높이면 이미지 그림자가 탈색 또는 너무 어두워 보이게 됩니다.

Scene Color Tint

씬 컬러 색조 - HDR 씬 컬러에 적용된 필터색 컬러에 대한 배수입니다.

Color Grading LUT Intensity

컬러 그레이딩 LUT 세기 - 색 보정 이펙트를 제어하는 스케일 인수입니다.

Color Grading LUT

컬러 그레이딩 LUT - 색 보정의 룩업 테이블로 사용할 LUT 텍스처입니다.

이미지를 클릭하면 원본을 확인합니다.

이미지를 클릭하면 원본을 확인합니다.

이미지를 클릭하면 원본을 확인합니다.

Neutral LUT

Greenish LUT

Reddish LUT

Shadows

이 섹션에 있는 프로퍼티는 씬의 그림자에 대한 색 보정 값을 조정하는 데 사용됩니다.

Saturation

채도 - 표현되는 색(색상)의 세기(순도)를 조절합니다. 채도 값이 높으면 보다 (빨강, 초록, 파랑) 원색에 가까운 식으로 나타나며, 채도가 낮으면 회색이 섞여 탁한 또는 탈색된 것처럼 보이게 됩니다.

Contrast

대비 - 씬의 밝고 어두운 색 값의 색조 범위를 조정합니다. 세기를 낮추면 하이라이트가 없어지고 이미지가 밝아져 탈색된 것처럼 보이는 반면, 높이면 하이라이트가 타이트해지고 이미지가 전반적으로 어두워집니다.

Gamma

감마 - 이미지의 중간톤 휘도를 조정하여 보다 정확한 색을 재현해 냅니다. 이 값을 낮추거나 높이면 이미지가 탈색 또는 너무 어두워 보이게 됩니다.

Gain

이득 - 이미지의 하양(하이라이트) 휘도를 조정하여 보다 정확한 색을 재현해 냅니다. 이 값을 낮추거나 높이면 이미지 하이라이트가 탈색 또는 너무 어두워 보이게 됩니다.

Offset

오프셋 - 이미지의 검정(그림자) 휘도를 조정하여 보다 정확한 색을 재현해 냅니다. 이 값을 낮추거나 높이면 이미지 그림자가 탈색 또는 너무 어두워 보이게 됩니다.

Shadows Max

그림자 최대 - Shadows 섹션에서 조정된 색 보정 프로퍼티에 영향을 끼치는 프로퍼티 배수입니다.

Midtones

이 섹션의 프로퍼티는 씬의 중간톤(Midtone)에 대한 색 보정 값을 조정하는 데 사용됩니다.

Saturation

채도 - 표현되는 색(색상)의 세기(순도)를 조절합니다. 채도 값이 높으면 보다 (빨강, 초록, 파랑) 원색에 가까운 식으로 나타나며, 채도가 낮으면 회색이 섞여 탁한 또는 탈색된 것처럼 보이게 됩니다.

Contrast

대비 - 씬의 밝고 어두운 색 값의 색조 범위를 조정합니다. 세기를 낮추면 하이라이트가 없어지고 이미지가 밝아져 탈색된 것처럼 보이는 반면, 높이면 하이라이트가 타이트해지고 이미지가 전반적으로 어두워집니다.

Gamma

감마 - 이미지의 중간톤 휘도를 조정하여 보다 정확한 색을 재현해 냅니다. 이 값을 낮추거나 높이면 이미지가 탈색 또는 너무 어두워 보이게 됩니다.

Gain

이득 - 이미지의 하양(하이라이트) 휘도를 조정하여 보다 정확한 색을 재현해 냅니다. 이 값을 낮추거나 높이면 이미지 하이라이트가 탈색 또는 너무 어두워 보이게 됩니다.

Offset

오프셋 - 이미지의 검정(그림자) 휘도를 조정하여 보다 정확한 색을 재현해 냅니다. 이 값을 낮추거나 높이면 이미지 그림자가 탈색 또는 너무 어두워 보이게 됩니다.

Highlights

이 섹션의 프로퍼티는 씬의 하이라이트에 대한 색 보정 값을 조정하는 데 사용됩니다.

Saturation

채도 - 표현되는 색(색상)의 세기(순도)를 조절합니다. 채도 값이 높으면 보다 (빨강, 초록, 파랑) 원색에 가까운 식으로 나타나며, 채도가 낮으면 회색이 섞여 탁한 또는 탈색된 것처럼 보이게 됩니다.

Contrast

대비 - 씬의 밝고 어두운 색 값의 색조 범위를 조정합니다. 세기를 낮추면 하이라이트가 없어지고 이미지가 밝아져 탈색된 것처럼 보이는 반면, 높이면 하이라이트가 타이트해지고 이미지가 전반적으로 어두워집니다.

Gamma

감마 - 이미지의 중간톤 휘도를 조정하여 보다 정확한 색을 재현해 냅니다. 이 값을 낮추거나 높이면 이미지가 탈색 또는 너무 어두워 보이게 됩니다.

Gain

이득 - 이미지의 하양(하이라이트) 휘도를 조정하여 보다 정확한 색을 재현해 냅니다. 이 값을 낮추거나 높이면 이미지 하이라이트가 탈색 또는 너무 어두워 보이게 됩니다.

Offset

오프셋 - 이미지의 검정(그림자) 휘도를 조정하여 보다 정확한 색을 재현해 냅니다. 이 값을 낮추거나 높이면 이미지 그림자가 탈색 또는 너무 어두워 보이게 됩니다.

HighLights Min

하이라이트 최소 - Highlights 섹션에 조정된 색 보정 프로퍼티에 영향을 끼치는 프로퍼티 배수입니다.

색 보정에 좋은 작업방식

Post Process Volume 의 컬러 그레이딩 툴 작업을 할 때 갖춰두면 좋은 습관이 몇 가지 있습니다.

  • Tonemapper (톤매퍼)는 프로젝트 단위 외양을 내는 데 설정해야 합니다. 이상적으로, 이 프로퍼티는 매우 절대적으로 샷 단위 또는 동적으로 조정해서는 안됩니다. 그 용도로는 Color Grading (컬러 그레이딩) 프로퍼티를 사용해야 합니다.

  • Global (글로벌) 색 보정 프로퍼티부터 사용해서 씬의 첫 단계 작업을 한 뒤 다른 프로퍼티를 사용하세요. 컬러 그레이딩 변경 대대수는 이 프로퍼티로 이루어져야 합니다.

  • 씬의 노출을 조정하는 데 Gain (이득) 프로퍼티를 사용하는 것은 좋지 않으며, 다른 색에 대한 미세 조정을 하는 데 사용해야 합니다. 그 대신 Lens (렌즈) > Auto-Exposure (자동 노출) 섹션의 Exposure Bias 를 사용하세요.

  • Offset 을 조금 사용하여 그늘지거나 어두운 지역을 약간 밝게 만들어 주세요. 약간 뿌옇게 또는 블룸이 더욱 강해 보이게 만들려는 경우 값을 높게 설정하면 되며, 반대로 씬이 너무 뿌옇거나 블룸이 너무 센 경우 값을 낮춰 씬에서 색을 빼주면 됩니다.

  • 룩업 테이블(LUT)을 사용하여 씬에 색을 입히는 것 보다, 그 작업은 톤 매핑 이후에 일어나므로, Color Grading 프로퍼티를 사용하여 원하는 외양을 만드는 것이 (LDR 이든 HDR 이든) 출력하는 모든 디스플레이에 일관성있게 표시됩니다. 하지만 LUT 로 톤을 설정하여 외양을 빠르게 확인한 뒤 색 보정을 통해 비슷한 외양을 내도록 하는 것이 좋을 수 있습니다.

교육 스트리밍 자료

태그
Select Skin
Light
Dark

새로운 언리얼 엔진 4 문서 사이트에 오신 것을 환영합니다!

문서 사이트에 대한 의견을 모을 수 있는 피드백 시스템을 포함해서 여러가지 새로운 기능을 준비하고 있습니다. 아래 Documentation Feedback 포럼(영문) 또는 언리얼 엔진 네이버 공식 카페(한글) 중 편하신 곳에 의견이나 문제점을 알려 주세요.

새 시스템이 준비되면 알려 드리겠습니다.

네이버 카페
공식 포럼