Version: 2021.1
언어: 한국어
리니어 텍스처 작업
HDR 컬러 피커

하이 다이나믹 레인지

HDR(High Dynamic Range)은 SDR(Standard Dynamic Range)보다 광도 다이나믹 레인지가 더 큰 이미지를 생성하는 기술로, 컬러와 밝기를 사실적으로 묘사할 수 있습니다.

HDR의 작동 원리

표준 렌더링에서 픽셀의 빨간색, 녹색, 파란색 값은 0과 1 사이의 8비트 값을 사용하여 저장됩니다. 여기서 0은 0의 강도를 나타내고, 1은 디스플레이 기기의 최대 강도를 나타냅니다. 이러한 제한된 값 범위는 현실에서 광원을 인식하는 방식을 정확하게 반영하지 못하며, 매우 밝거나 매우 어두운 요소가 있을 때 이미지가 비현실적으로 변할 수 있습니다.

HDR 렌더링에서 픽셀 값은 부동 소수점 숫자를 사용하여 저장됩니다. 이 방식은 훨씬 더 넓은 범위의 값을 허용하므로 인간의 눈이 컬러와 밝기를 인식하는 방식을 더욱 정확하게 반영합니다.

Unity의 HDR

Unity에서는 내부 렌더링 계산에 HDR 이미지를 사용할 수 있습니다. 이 기능을 HDR 렌더링이라고 합니다. HDR 렌더링이 활성화되면 Unity는 씬을 HDR 이미지 버퍼로 렌더링하고, 해당 HDR 이미지를 사용하여 포스트 프로세싱 효과와 같은 렌더링 작업을 수행합니다. 즉 실제 값을 사용하여 계산을 수행하므로 더욱 사실적인 결과를 얻을 수 있습니다.

특정 호환 가능 플랫폼에서 Unity는 이러한 HDR 이미지를 디스플레이 기기로 보낼 수 있도록 지원합니다. 이 기능을 HDR 출력이라고 합니다.

HDR 사용의 장점

  • 밝은 영역에서 컬러 손실이 발생하지 않습니다.
  • 블룸 및 글로우 효과를 잘 지원합니다.
  • 단조로운 조명 영역에서 줄무늬가 감소합니다.

HDR 사용의 단점

  • VRAM 사용량이 증가합니다.
  • 사용 시 톤 매핑의 계산 부하가 증가합니다.
  • 하드웨어 안티앨리어싱이 HDR 렌더링과 호환되지 않습니다.

렌더 파이프라인 호환성

렌더 파이프라인 HDR 렌더링 HDR 출력
빌트인 렌더 파이프라인

인스펙터에서 또는 Camera.allowHDR API를 사용하여 카메라별 HDR 렌더링을 활성화합니다.

HDR 렌더링을 활성화하고 그래픽스 설정 창에서 각 티어에 대한 HDR 버퍼의 포맷을 설정합니다.


HDROutputSettings API를 사용하여 HDR 출력 옵션을 설정합니다.

자세한 내용은 플랫폼별 문서를 참조하십시오.
유니버설 렌더 파이프라인(URP)

인스펙터에서 또는 Camera.allowHDR API를 사용하여 카메라별 HDR 렌더링을 활성화합니다.

유니버설 렌더 파이프라인 에셋을 사용하여 모든 카메라에 대해 HDR 렌더링을 활성화합니다.
연구 중

개발 팀이 이 기능을 구현하는 방법을 연구하고 있습니다. 릴리스 날짜는 미정입니다.
고해상도 렌더 파이프라인(HDRP)

HDR 렌더링은 기본적으로 모든 카메라에 대해 활성화되며, 비활성화할 수 없습니다.
연구 중

개발 팀이 이 기능을 구현하는 방법을 연구하고 있습니다. 릴리스 날짜는 미정입니다.

톤 매핑

톤 매핑은 한 범위에서 다른 범위로 컬러 값을 매핑하는 프로세스입니다. HDR 작업 시 톤 매핑을 사용하여 HDR 이미지 버퍼의 컬러를 전환하여 값이 디스플레이 기기에서 처리할 수 있는 범위 내에 있도록 해야 합니다. 톤 매핑을 사용하지 않으면 매우 밝은 영역에서 이미지의 디테일 및 컬러 정보가 대부분 손실될 수 있습니다.

HDR로 렌더링되고 SDR로 출력된 특별히 밝은 씬. 톤 매핑 없이는 대부분의 픽셀이 범위를 벗어난 것처럼 보입니다.
HDR로 렌더링되고 SDR로 출력된 특별히 밝은 씬. 톤 매핑 없이는 대부분의 픽셀이 범위를 벗어난 것처럼 보입니다.
위와 같은 씬이지만, 이번에는 톤 매핑이 적용되어 밝기가 더 사실적인 범위 안에서 표현되었습니다. 적응적 톤 매핑은 첫 번째 이미지와 두 번째 이미지 사이에서 적절하게 블렌드할 수 있으므로 시각 인식 매체(예: 눈, 카메라 등)의 적응적 성격을 시뮬레이션할 수 있습니다.
위와 같은 씬이지만, 이번에는 톤 매핑이 적용되어 밝기가 더 사실적인 범위 안에서 표현되었습니다. 적응적 톤 매핑은 첫 번째 이미지와 두 번째 이미지 사이에서 적절하게 블렌드할 수 있으므로 시각 인식 매체(예: 눈, 카메라 등)의 적응적 성격을 시뮬레이션할 수 있습니다.

HDR 렌더링을 SDR 출력과 함께 사용하는 경우 톤 매핑을 사용하여 HDR 이미지 버퍼를 디스플레이용 SDR 이미지로 전환해야 합니다. Unity는 이러한 작업을 수행할 수 있도록 톤 매핑 포스트 프로세싱 효과를 제공합니다. 포스트 프로세싱 스택 V2 패키지, URP 통합 포스트 프로세싱 솔루션, HDRP 통합 포스트 프로세싱 솔루션에는 모두 톤 매핑 효과가 포함되어 있습니다.

HDR 렌더링을 HDR 출력과 함께 사용하면 다음 중 하나를 수행할 수 있습니다.

  • HDR 이미지 버퍼를 디스플레이용 호환 가능 HDR 포맷으로 직접 전환하는 자체 톤 매핑 솔루션을 생성합니다.
  • Unity의 톤 매핑 포스트 프로세싱 효과를 사용하여 HDR 버퍼를 SDR 이미지로 전환(상기 참조)한 후 Unity의 자동 출력 톤 매핑을 사용하여 해당 SDR 이미지를 적절한 출력 포맷으로 전환합니다. Unity의 자동 출력 톤 매핑에 대한 자세한 내용은 HDROutputSettings.automaticHDRTonemapping 문서를 참조하십시오.

빌트인 렌더 파이프라인에서 HDR 렌더링 사용

포워드 렌더링 경로에서 카메라는 카메라에 포스트 프로세싱 효과가 있는 경우에만 HDR을 지원합니다. 이는 성능 고려 사항 때문입니다. 카메라에 포스트 프로세싱 효과가 없으면 씬은 HDR이 지원되지 않는 백 버퍼로 직접 렌더링됩니다.

디퍼드 셰이딩 렌더링 경로에서 HDR이 카메라에 대해 활성화되지 않으면 라이팅 버퍼도 부동 소수점 버퍼로 할당됩니다. 이렇게 하면 라이팅 버퍼의 밴딩 현상이 줄어듭니다.

  • 2020.1에서 HDROutputSettings API 추가됨 NewIn20201
리니어 텍스처 작업
HDR 컬러 피커