본문으로 건너뛰기

© 2026 Molayo

Godot헤드라인2026. 05. 20. 01:36

Godot 4.7에 HDR 출력 기능 도입

요약

Godot 4.7 엔진에 HDR(High Dynamic Range) 출력 기능이 공식 도입되었습니다. 내부적으로 수행하던 HDR 렌더링 결과가 최종 출력물에 반영됨으로써, 밝은 영역의 디테일을 보존하고 더욱 풍부한 시각적 경험을 제공합니다.

핵심 포인트

  • HDR 출력을 통해 밝은 영역의 디테일 증가 및 태양과 같은 광원의 표현력 향상
  • Windows, macOS, iOS, visionOS, Linux(Wayland) 플랫폼 지원
  • Forward+ 및 Mobile 렌더러에서만 사용 가능하며, Compatibility 렌더러와 Web은 현재 미지원
  • Windows 사용자의 경우 Direct3D 12 드라이버 설정이 필요함

오랜 기다림 끝에, 드디어 Godot에 HDR 출력이 도입됩니다! 그 과정은 길고 험난했지만, 그 결과물은 모든 지원 플랫폼에서 가능한 한 최상의 모습으로 보이도록 구현된 동급 최고의 HDR 구현체입니다.

HDR 출력이란 무엇일까요? High Dynamic Range (HDR)라는 개념은 원래 사진학에서 유래되었습니다. 사진학에서는 동일한 위치에서 서로 다른 노출로 여러 장의 사진을 촬영한 뒤, 편집 과정에서 이를 결합하여 더 넓은 동적 범위(Dynamic Range)를 얻을 수 있습니다. 이를 통해 이미지의 어두운 부분과 밝은 부분 모두에서 노출 부족(Underexposed)이나 노출 과다(Overexposed) 픽셀을 피하면서 가능한 한 많은 디테일을 보존할 수 있습니다.

컴퓨터 그래픽스(Computer Graphics)에서는 유사한 효과를 얻기 위해 장면을 여러 번 렌더링할 필요가 없습니다. 대부분의 게임 엔진과 마찬가지로, Godot는 오랫동안 내부적으로 3D 장면을 HDR로(Project Settings에서 활성화한 경우 2D도 포함) 렌더링해 왔습니다. 이는 정밀도를 높이고 밴딩(Banding) 현상을 줄일 뿐만 아니라, 더 나은 예술적 제어(노출(Exposure), 밝은 요소에만 영향을 미치는 글로우(Glow) 등)를 가능하게 하기 위함입니다. HDR 출력을 통해, 이러한 내부 HDR 렌더링이 마침내 최종 출력물에 혜택을 줄 수 있게 되었습니다. 이는 단순히 이미지를 더 밝게 만드는 것이 아니라, 밝은 영역의 디테일을 증가시키는 것입니다. 예를 들어, 이제 야외 장면에서 태양이 주변 구름보다 훨씬 더 밝게 보일 수 있습니다.

어떤 플랫폼과 렌더러(Renderer)에 HDR 출력이 도입되나요? Godot 4.7에서 HDR 출력은 Windows, macOS, iOS, visionOS, 그리고 Linux(Wayland만 지원하며, X11은 HDR 출력을 지원하지 않음)에 도입됩니다. Android에서의 HDR 출력 지원은 여전히 작업 중이며, 향후 Godot 릴리스에서 계획되어 있습니다. HDR 출력은 Forward+ 및 Mobile 렌더러에서만 지원됩니다. 그래픽 API(Graphics API)의 제한으로 인해 Compatibility 렌더러에서는 지원되지 않습니다. 불행히도, 이로 인해 현재 Web 플랫폼에서도 HDR 출력을 지원할 수 없습니다.

출력 예시
이 HDR 이미지들은 밝기를 50%로 설정한 HDR 호환 스마트폰 또는 노트북에서 볼 때 가장 잘 보입니다. 이 글을 작성하는 시점을 기준으로 Firefox는 HDR 이미지를 지원하지 않습니다.

표준 동적 범위 (SDR) 고동적 범위 (HDR) 만약 위의 이미지가 SDR 예시와 크게 달라 보이지 않는다면, 사용 중인 기기에서 HDR이 지원되고 활성화되어 있는지 다시 한번 확인하십시오. 참고: 위의 이미지들이 올바르게 표시되려면 HDR과 호환되는 화면 및 운영체제(OS), 그리고 HDR과 AVIF를 지원하는 웹 브라우저를 사용해야 합니다. 또한 운영체제 설정에서도 HDR이 활성화되어 있어야 합니다. 만약 스크린샷이 페이지의 나머지 부분에 비해 너무 어둡게 보인다면, 연결 과정 중 어딘가에서 HDR이 지원되지 않고 있을 가능성이 높습니다.

Godot에서 HDR 출력 활성화하기
Godot에서 HDR 출력을 사용하기 위해서는 몇 가지 전제 조건이 있습니다:

  • 지원되는 플랫폼을 사용하십시오 (Windows, macOS, Linux/Wayland, iOS, visionOS).
  • 지원되는 렌더링 드라이버를 사용하십시오 (Windows의 경우 Direct3D 12, Apple 플랫폼의 경우 Metal 또는 Vulkan, Linux의 경우 Vulkan).
    Windows의 경우, Godot 4.5 이상 버전으로 생성된 프로젝트는 이미 Direct3D 12가 기본값입니다. 이전 버전에서 생성된 프로젝트의 경우, Rendering > Rendering Device > Driver.windows 프로젝트 설정을 d3d12로 설정하고 에디터를 재시작하십시오. Linux의 경우, Display > Display Server > Driver.linuxbsd 프로젝트 설정을 wayland로 설정하고 에디터를 재시작하십시오.
  • Forward+ 또는 Mobile 렌더러를 사용하십시오.

이러한 요구 사항이 충족되면, Display > Window > HDR > Request HDR Output 프로젝트 설정을 토글하여 프로젝트에서 HDR 출력을 활성화할 수 있습니다. 이것이 전부입니다! 에디터를 재시작할 필요도 없습니다. 하지만 견고한 HDR 구현을 위해서는 더 많은 작업이 필요합니다. 예를 들어, 플레이어가 HDR 출력을 활성화하거나 비활성화할 수 있도록, 또는 선택적으로 자신의 화면에 더 잘 맞게 HDR을 보정(calibrate)할 수 있도록 게임의 그래픽 설정 메뉴에 몇 가지 옵션을 노출해야 합니다. 이 새로운 기능의 사용에 관한 전체 문서는 Godot 문서의 HDR 출력 페이지에서 확인할 수 있습니다. 또한, 디스플레이의 성능을 테스트하기에 아주 좋은 방법인 새로운 HDR 출력 데모 프로젝트도 확인해 보십시오.

기술적 구현
Godot에서 HDR 출력을 구현하는 과정은 긴 여정이었습니다.

Godot의 대부분의 API와 마찬가지로, 저희는 몇 가지 설계 목표를 가졌습니다. 높은 수준의 사용성(Usability)을 확보하여 HDR 출력을 쉽게 활성화하고 프로젝트를 HDR에 빠르게 적응시킬 수 있도록 하는 것, 다양한 화면 성능에 적응할 수 있을 만큼 충분한 유연성을 갖추는 것, 그리고 별도의 설정 변경 없이 Forward+ 및 Mobile 렌더러(Renderer)를 모두 지원하는 것입니다. 또한, HDR이 활성화되었을 때 대부분의 렌더링 기능이 매개변수 변경 없이 작동하도록 보장하며, SDR 범위에 있을 때는 시각적 변화를 최소화해야 합니다. 별도의 설정 없이 HDR을 토글하면 전체 이미지가 밝아지거나 채도(Saturation)가 높아지는 것이 아니라, 단지 다이내믹 레인지(Dynamic Range)만 확장되어야 합니다.

최종 API는 수개월 동안 Godot 기여자 채팅(Godot Contributors Chat)에서 열린 수많은 회의의 결실입니다. 게임 분야에서 HDR은 많은 게임의 모드(Mod) 수정을 요구할 정도로 격렬한 논의의 대상이 될 수 있으므로, 저희는 이 API 설계가 Godot 게임들의 구현 실수 위험을 최소화하기를 바랍니다. 게다가 Godot의 기존 렌더링 기능 중 상당수는 HDR 출력과 더 잘 작동하도록 수정이나 미세 조정(Tweaks)이 필요했습니다. 많은 렌더링 기능이 HDR을 인식하지 못했기 때문에, Godot처럼 기능이 풍부한 엔진에서 HDR 출력을 구현하는 것은 아마도 가장 어려운 측면 중 하나였을 것입니다. 이로 인해 추가적인 다이내믹 레인지가 잘려 나가거나(HDR 출력의 이점을 상쇄함), 색 정밀도가 제한되어 밴딩(Banding) 현상이 증가하는 결과가 초래되었습니다.

이를 해결하기 위해 톤매핑(Tonemapping), 글로우(Glow), 디밴딩(Debanding) 등에 여러 변경 사항이 적용되어야 했습니다. 가장 눈에 띄는 점은 AgX 톤매퍼(Tonemapper)가 HDR 출력과 작동할 수 있도록 4.6 버전에서 대폭 재작업되었다는 것입니다. 글로우(Glow) 또한 4.6 버전부터 기본적으로 스크린 혼합 모드(Screen blend mode)를 사용하도록 수정되었으며, 현재는 더욱 설득력 있는 외관을 위해 톤매핑 이전에 수행됩니다. 이 기능의 개발에 참여해 주신 Allen Pestaluky, Josh Jones, ArchercatNEO, Stuart Carnie, 그리고 그 외 모든 분께 감사드립니다!

참조
Windows용 Pull request (Pull request)
macOS, iOS, 및 visionOS용 Pull request (Pull request)
Linux/Wayland용 Pull request (Pull request)
데모 프로젝트 Pull request (Pull request)
문서 Pull request (Pull request)

후원
Godot는 Godot 커뮤니티의 관대한 기부 덕분에 고용된 소수의 전임 또는 파트타임 개발자들과, 여가 시간을 활용해 기여하는 수백 명의 기여자들에 의해 개발되는 비영리 오픈 소스 (Open-source) 게임 엔진입니다. 프로젝트에 시간이나 재정적 지원을 아끼지 않은 모든 분께 깊은 감사를 드립니다! 프로젝트에 재정적으로 후원하여 향후 인력 채용을 확보하는 데 도움을 주고 싶으시다면, Godot Foundation (Godot 재단)에서 관리하는 Godot Development Fund (Godot 개발 기금) 플랫폼을 통해 참여하실 수 있습니다. 또한 귀하에게 더 적합할 수 있는 몇 가지 다른 기부 방법들도 마련되어 있습니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 Godot Engine News의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0