Search
🌈

컬러 매니지먼트 (ACEScg)

태그
Pipeline
1 more property

제작 의도

언리얼 엔진에서 ACEScg 기반으로 모든 프로그램에서 동일한 룩을 확보하기 위해 연구 및 개발을 진행하고 정리했습니다.

구성 / 설명

2가지 Workflow (업계 표준)

Linear Workflow (sRGB)
Linear Workflow는 현재까지도 사용되고 있으며 매우 친숙한 Workflow입니다.
ACES Workflow (ACEScg)
ACES Workflow는 현재 산업 표준으로 자리를 잡아가고 있는 Workflow입니다.
색도표
ACES 변환 과정

Unreal Engine

Unreal Engine의 Working Color Space
Unreal Engine의 Default Working Color Space는 sRGB/Rec.709입니다. (뷰포트는 ACES Tonemapper) Unreal Engine 5부터 Working Color Space 변경이 가능하며 ACES AP1/ACEScg선택 가능합니다.
Movie Render Queue
Linear Workflow (Default)
Unreal Engine의 기본 Color Space는 sRGB/Rec.709이므로 OCIO를 사용하지 않고 Tone Curve를 적용하지 않는 것 만으로 Linear-sRGB 데이터 출력이 가능합니다.
ACES Workflow
프로젝트 세팅에서 ACES AP1/ACEScg로 Color Space의 변경이 필요합니다.
ACES Workflow를 채택할 때의 장단점
장점
Linear한 환경에서 넓은 색역을 사용할 수 있습니다.
다양한 Input을 수용할 수 있습니다.
다양한 Output을 (인터넷, TV, 영화관 등) 출력할 수 있습니다.
단점
아직까지 판매되는 에셋의 텍스쳐는 sRGB가 대부분입니다.

Color Space (Tools)

Substance Painter
Color Management
Color management : OpenColorIO
OpenColorIO configuraion : ACES 1.2
나머지 옵션은 Default
텍스쳐 Export를 8bits 또는 16bits 로 하면서 ACEScg를 적용해야 할 경우에는 Utility - sRGB - Texture가 아닌 ACES - ACEScg로 변경이 필요
Floating point images는 16fbits / 32fbits 등을 의미합니다.
Channel Settings
Bit Depth가 중요하게 작용합니다.
Color와 Scalar 데이터를 구분하여 적용해야 합니다.
8bits로 진행할 경우 언리얼 엔진에서 Linear로 텍스쳐 인코딩이 필요 (sRGB Gamma 인코딩 관련) → 8bits는 Linear 데이터 저장이 불가능 16fbits / 32fbits로 진행할 경우 Export 텍스쳐의 Color Space가 ACES - ACEScg이므로, 언리얼 엔진에서 따로 설정이 필요하지 않음 (언리얼 엔진의 Color Space가 ACEScg일 경우에 한해서)
Base Color : RGB32F
Normal : RGB16F
ORM : L16F
Height : L16F
Scattering : L16F
Displacement : L16F
Mask Channel : L16F (대부분의 Mask Texture는 Grayscale로 적용하기 때문에)
User Channel : sRGB 또는 Grayscale에 따라서 Bit Depth 선택
Export Settings
Bit Depth가 중요하게 작용합니다.
파일 포맷은 exr로 통일합니다. (tiff도 가능)
Base Color : 32fbits
ORM : 16fbits
Normal : 16fbits
Unreal Engine 5
Project Settings
Working Color Space : ACES AP1 / ACEScg
OCIO Display : ACES - ACEScg → ACES - sRGB 또는 Output - sRGB
Material Asset Editor
Texture Sample 노드
Sampler Type
Base Color : Linear Color
ORM : Linear Color 또는 Mask
Normal : Normal
Texture Asset Editor
Compression Settings
Default는 압축
HDR Compressed는 Linear Color와 Bit Depth를 보존하면서 압축
Base Color : Default 또는 HDR Compressed
ORM : Masks 또는 HDR Compressed
Normal : Normalmap 또는 HDR Compressed
sRGB
모든 텍스쳐 sRGB 옵션 Off (Linear)
ACES - ACEScg Texture는 Gamma Correction(sRGB)이 적용되지 않은 Linear 데이터
Source Color Settings
ACEScg로 작업된 Texture는 변경 X
sRGB로 작업된 Texture는 Color Space를 sRGB / Rex709 변경
DaVinci Resolve
Project Settings
Color Management
상황에 맞는 변환이 필요합니다.
Color science : ACEScct
ACES Version : ACES 1.2
ACES Input Transform : No Input Transform
ACES Output Transform : sRGB
Clip (Resource)
상황에 맞는 변환이 필요합니다.
ACES Input Transform
Color Space Conversion : sRGB (Linear)
Color Space Conversion : ACEScg

테스트 이미지

언리얼 엔진에서 렌더링한 후 다빈치 리졸브에서 확인한 이미지입니다.
Color Space : sRGB
sRGB_Grey
sRGB_Tex
sRGB_Value
MRQ 변환
sRGB_Grey_ACEScg
sRGB_Tex_ACEScg
sRGB_Value_ACEScg
Color Space : ACEScg
ACEScg_Grey
ACEScg_Tex
ACEScg_Value
언리얼 엔진과 서브스턴스 페인터 룩을 확인한 이미지입니다.
Unreal Engine
Substance Painter

참고

이미지
사이트
영상