Flex FOV(洁净室移植版)

Flex FOV(洁净室移植版)

显示任意FOV的智能默认值

FlexFOV(Cleanroom 移植版)

以最高 360 度的水平视场角渲染 Minecraft。世界被捕捉到一个立方体的 6 个面上,并通过片段着色器重新投影,因此画面在远超原版直线投影(rectilinear projection)约 110° 失效点之后仍然可用。

这是 shaunlebron 的 FlexFOV 的移植版——而 FlexFOV 本身又是 18107 的 Render360 的分支——移植到 Minecraft 1.12.2 上的 Cleanroom Loader。渲染数学和调用点与原版保持一致;新增的是触达它们的机制(参见工作原理)。

需求

  • Minecraft 1.12.2,运行于 Cleanroom Loader
  • 支持 GLSL 片段着色器的 GPU/驱动
  • 仅客户端。 该模组在专用服务器上不起任何作用,你加入的服务器也无需安装它。

配置

编辑 config/flexfovclrmport.cfg,或在游戏内通过 Mods → FlexFOV → Config 更改选项。游戏内所做的更改会立即生效。

选项 类型 默认值 作用
Mod Enabled boolean true 模组的开/关切换。关闭时,世界由未经修改的原版渲染绘制,此处的其他所有选项均无效。
Render Mode FLEX / PANINI / STEREOGRAPHIC / MERCATOR FLEX 世界通过哪种投影重新投影。当 Mod Enabled 关闭时无效。
FOV 0–360 180 水平视场角,以度为单位。
Quality 0.1–5.0 1.0 离屏捕捉的分辨率倍率。6 个面中的每一个都以(屏幕高度 × quality)的平方进行渲染,因此开销随该值的平方增长——高于 1.0 后会迅速变得昂贵。
Rubix Debug boolean false 为每个捕捉到的立方体面着色以区分,并叠加网格,以显示接缝位置。
Split Compare boolean false 分割屏幕,以并排比较 hybrid、panini 和 stereographic 投影。

Mod Enabled 和 Render Mode 是不同的开关

Mod Enabled 决定世界如何到达屏幕:关闭意味着走原版渲染路径,与完全不装模组逐位相同。Render Mode 仅在广角路径内部选择一种投影,当 Mod Enabled 关闭时完全无效。

渲染模式的作用

FLEX 仅根据 FOV 选择投影:

FOV 投影
低于 90 直线投影(原版的做法)
90–160 混合为 panini/stereographic 混合投影
160–300 混合为 mercator
300–360 mercator

PANINI、STEREOGRAPHIC 和 MERCATOR 则在任何 FOV 下都固定使用一种投影。当 FOV 接近 360 时,Panini 和 stereographic 会退化;mercator 是能在该处保持稳定的那一个。

致谢

许可证

GPLv3

衍生自 shaunlebron 的 FlexFOV,而后者又是 18107 的 Render360 的分支。