Minecraft HDR Mod

Minecraft HDR Mod

在Minecraft中使用Iris着色器启用原生HDR

杂项

一个Minecraft模组,可在Windows / macOS / Linux上通过Iris光影实现原生HDR。 PhotonHDR图片 (Photon光影经HDR补丁处理,配合Patrix材质包,使用模组自带的截图功能拍摄。)

模组功能

  • 原生HDR,支持scRGB和HDR10/PQ。
  • 通过全新的渲染通道进行UI色彩校正。
  • 使用Cloth Config API进行游戏内配置。
  • 游戏内HDR截图。
  • Replay Mod HDR视频导出(需要自定义FFmpeg命令行,可在配置菜单中找到)。
  • 近乎完整的Wayland IME修复(需要最新版IMBlocker)。

用户指南

  • 查看XgarhontX为部分支持本模组的光影包提供的临时HDR输出和色调映射补丁:Google Sheets
    • 可在此处查看部分图片:Wiki
  • 通过配置菜单调整HDR亮度值(纸白、UI、峰值)。(默认按键:F9)
  • 在游戏内拍摄HDR截图。(默认按键:F10)
  • 支持平台:
    • Windows:Nvidia/AMD GPU通常运行流畅。自v2.1.0起支持Intel GPU,采用DXGI回退路径,但存在性能下降(更多信息见v2.1.0发布说明)。
    • Linux Wayland:AMD/Intel GPU通常运行流畅。Nvidia GPU用户可能会遇到一些问题或崩溃,请参阅故障排除部分寻找可能的解决方法。
    • macOS:支持但需更多测试,预计存在Bug。此外,macOS上光影包的支持有限。
    • Android/iOS:不支持。如果移动端启动器开发者对本项目感兴趣,我的glfw分支可以作为未来HDR支持的起点。
  • 故障排除:
    • ReShade目前在默认设置下不兼容,会导致加载失败并破坏天空。
      • 在配置/高级选项里启用“Force Activate OpenGL-DirectX Interop”可以提高与SpecialK和ReShade的兼容性。请确保它们只注入DirectX 11层。
    • 其他干扰GLFW的模组可能不兼容。
    • 如果您的游戏过亮或过暗,请尝试自行调整自定义亮度值。
    • 如果您在Windows上,请务必安装最新的Visual C++ Redistributable。
    • 如果游戏在NeoForge/Forge上崩溃,请禁用<游戏文件夹>/config/fml.toml中的earlyWindowControl。
    • 如果启用光影后HDR异常,请将Iris/Oculus中的“Colorspace”设置重置为“sRGB”。
    • 如果游戏无法启动或某些功能异常,请清理临时文件(路径可在日志中找到,Windows下为%TEMP%/glfw,Linux下为/tmp/glfw)。
    • 对于Linux Nvidia用户,如果游戏无法启动,这里有一个可能的解决方法(使用Zink,因此预计会有性能损失):
      • 使用以下环境变量:
        export __GLX_VENDOR_LIBRARY_NAME=mesa
        export __EGL_VENDOR_LIBRARY_FILENAMES=/run/opengl-driver/share/glvnd/egl_vendor.d/50_mesa.json
        export MESA_LOADER_DRIVER_OVERRIDE=zink
        export GALLIUM_DRIVER=zink
        
      • 仅适用于Mesa >= 26.0.0。较低版本会因缺少此PR而导致游戏崩溃。

光影包开发者指南

Wiki教程

宏定义

  • HDR_MOD_INSTALLED
  • HDR_ENABLED

Uniforms

  • float HdrGameMinimumBrightness;
  • float HdrGamePeakBrightness;
  • float HdrGamePaperWhiteBrightness;
  • float HdrUIBrightness; 请在#if HDR_MOD_INSTALLED代码块中使用这些uniforms。

输出

着色器输出(即最终渲染通道写入主渲染目标的内容)应采用扩展sRGB编码(Rec.709基色,sRGB(负数使用−f(−x))传递函数),并且不应将RGBA8F用于场景颜色。

致谢

  • Tom94,感谢他提供的带色彩管理的glfw分支;
  • IMS212,感谢他提供的Iris光影和原始glfw补丁思路;
  • XgarhontX,感谢他为RenoDX Minecraft HDR和光影补丁所做的工作,并帮助我实现正确的色彩转换;
  • moyongxin和CommandGenius,感谢他们提高了模组的兼容性;
  • LitnhJacuzzi,感谢他提供了正确的IMBlocker兼容性支持。

版权

HDR Mod主仓库采用MIT许可证。随附的来自Tom94/我的分支的GLFW采用zlib/libpng许可证。

Star历史

Star历史图