HDR(High Dynamic Range)은 SDR(Standard Dynamic Range)보다 광도 다이나믹 레인지가 더 큰 이미지를 생성하는 기술로, 컬러와 밝기를 사실적으로 묘사할 수 있습니다.
표준 렌더링에서 픽셀의 빨간색, 녹색, 파란색 값은 0과 1 사이의 8비트 값을 사용하여 저장됩니다. 여기서 0은 0의 강도를 나타내고, 1은 디스플레이 기기의 최대 강도를 나타냅니다. 이러한 제한된 값 범위는 현실에서 광원을 인식하는 방식을 정확하게 반영하지 못하며, 매우 밝거나 매우 어두운 요소가 있을 때 이미지가 비현실적으로 변할 수 있습니다.
HDR 렌더링에서 픽셀 값은 부동 소수점 숫자를 사용하여 저장됩니다. 이 방식은 훨씬 더 넓은 범위의 값을 허용하므로 인간의 눈이 컬러와 밝기를 인식하는 방식을 더욱 정확하게 반영합니다.
Unity에서는 내부 렌더링 계산에 HDR 이미지를 사용할 수 있습니다. 이 기능을 HDR 렌더링이라고 합니다. HDR 렌더링이 활성화되면 Unity는 씬을 HDR 이미지 버퍼로 렌더링하고, 해당 HDR 이미지를 사용하여 포스트 프로세싱 효과와 같은 렌더링 작업을 수행합니다. 즉 실제 값을 사용하여 계산을 수행하므로 더욱 사실적인 결과를 얻을 수 있습니다.
특정 호환 가능 플랫폼에서 Unity는 이러한 HDR 이미지를 디스플레이 기기로 보낼 수 있도록 지원합니다. 이 기능을 HDR 출력이라고 합니다.
HDR 사용의 장점
HDR 사용의 단점
For information about support for HDR Rendering and HDR Output in the Scriptable Render Pipelines URP and HDRP, see the Render pipeline feature comparison.
톤 매핑은 한 범위에서 다른 범위로 컬러 값을 매핑하는 프로세스입니다. HDR 작업 시 톤 매핑을 사용하여 HDR 이미지 버퍼의 컬러를 전환하여 값이 디스플레이 기기에서 처리할 수 있는 범위 내에 있도록 해야 합니다. 톤 매핑을 사용하지 않으면 매우 밝은 영역에서 이미지의 디테일 및 컬러 정보가 대부분 손실될 수 있습니다.
HDR 렌더링을 SDR 출력과 함께 사용하는 경우 톤 매핑을 사용하여 HDR 이미지 버퍼를 디스플레이용 SDR 이미지로 전환해야 합니다. Unity는 이러한 작업을 수행할 수 있도록 톤 매핑 포스트 프로세싱 효과를 제공합니다. 포스트 프로세싱 스택 V2 패키지, URP 통합 포스트 프로세싱 솔루션, HDRP 통합 포스트 프로세싱 솔루션에는 모두 톤 매핑 효과가 포함되어 있습니다.
HDR 렌더링을 HDR 출력과 함께 사용하면 다음 중 하나를 수행할 수 있습니다.
포워드 렌더링 경로에서 카메라는 카메라에 포스트 프로세싱 효과가 있는 경우에만 HDR을 지원합니다. 이는 성능 고려 사항 때문입니다. 카메라에 포스트 프로세싱 효과가 없으면 씬은 HDR이 지원되지 않는 백 버퍼로 직접 렌더링됩니다.
디퍼드 셰이딩 렌더링 경로에서 HDR이 카메라에 대해 활성화되지 않으면 라이팅 버퍼도 부동 소수점 버퍼로 할당됩니다. 이렇게 하면 라이팅 버퍼의 밴딩 현상이 줄어듭니다.