肉眼

肉眼

泛光、镜头光晕、光晕残影以及每颗星星周围抖动的噪点方块,已在着色器层面移除,包括其他所有光晕模组都会残留的太阳光晕。游戏本身没有为这些提供任何设置选项。

[size=4][b]你不是透过镜头在看。你是透过面罩在看。[/b][/size]

《无人深空》渲染你视野的方式,就像是透过相机拍摄的——泛光、镜头光晕、污渍与光晕残影、星系地图上涂抹般的高光,以及一种逐帧噪点图案,它在每颗星星周围散布出一个抖动的方块。游戏没有为你提供任何一项相关设置。「裸眼」在着色器层面移除了这一切。

[size=4][b]它移除了什么[/b][/size]

[b]1. 泛光——到处都是,而非只是减弱。[/b] 游戏中每个明亮物体周围的光晕扩散:飞船推进器、发光植物、水晶、风暴闪电、空间站内部、太阳在行星表面的光晕。十个着色器变体,因为游戏在片段与计算路径以及五种色调映射配置的笛卡尔积上编译泛光。漏掉一个,泛光就会在某些光照条件下残留,而在另一些条件下消失。

[b]2. 太阳光晕——包括那个「无法」移除的。[/b] 包括太阳自身的光晕,以及当太阳刚好位于你视野之外时扫过画面的残影链。太阳通过它自己编译的着色器路径(BRIGHT_SUN)渲染,这就是为什么那些剥离了其他所有光晕的模组会把它留下。这一个在着色器层面将它移除。

[b]3. 星系地图伪影。[/b] 变形拉丝、色差残影,以及前景通道。地图上的星星变成了光点,而非涂抹般的高光。

前景通道被证明是本模组所做的最大单项改动。原版在星系地图上覆盖了一层全屏红色洗色;在星星之间的空白区域,它承载了屏幕上约 46% 的光。移除它之后,地图呈现为带星星的黑色太空。

[b]4. 星形方块噪点——那个没人命名,因为它难以察觉且一旦看见就无法忽视。[/b] 原版在天空像素上运行了一种随机颜色散布:对于远平面上的每个像素,它在 31 x 31 的方框内随机选取一个邻近像素,如果该邻近像素也是天空且在 7/255 范围内,该像素就采用它的颜色。它每帧都会重新随机化。

结果就是一个抖动的、轴对齐的、半填充的方块坐落在太空中每颗星星周围——方块是因为偏移量是两个独立的均匀随机数乘以 31 后取整,半填充是因为只有部分像素对通过阈值。「裸眼」将一个常量改为零,使该测试永远无法通过。

[b]精准手术。[/b] 着色器工作的其他方面没有任何改变:没有亮度、没有色调映射、没有黑点,几何体、天空、行星和飞船均未触动。天空像素只是保留了自己的颜色。

[size=4][b]请阅读:什么被保留了,以及为什么[/b][/size]

[b]星星周围的圆形光晕不是泛光,也不是 bug。[/b] 它是星星广告牌自身的 alpha 衰减,在任何后处理运行之前就已写入。它一直存在。方块噪点一直坐在它上面。噪点消失后,光晕首次变得可见,有些人会以为这个模组添加了它。它没有。

[b]泛光移除是彻底的,而非适度的。[/b] 这是一种偏好,不是改进。如果你喜欢游戏的光晕,你不会喜欢这个模组。没有半强度选项,因为修复方式是在源头替换为零向量,而非缩放因子。


[size=4][b]什么没有被改变[/b][/size]

[list]
[]亮度、曝光、色调映射或黑点。[/]
[]几何体、地形、天空、行星、飞船、生物或空间站。[/]
[]色差——游戏已经有对应的开关。[/]
[]你存档中的任何内容。这个模组只是编译后的着色器,仅此而已。[/]
[]没有 Lua,没有 AMUMSS 构建步骤,没有 .pak。[/]
[/list][size=4][b]内容——26 个文件[/b][/size]

[list]
[][b]泛光——10 个着色器。[/b] POSTPROCESS_BLOOM_APPLY,跨五个色调映射变体的片段与计算路径。[/]
[][b]太阳光晕与残影——4 个着色器。[/b] LENSFLARE BRIGHT_SUN 用于太阳自身的光晕,LENSFLARE FEATURE 用于残影链和标题画面。[/]
[][b]星系地图——6 个着色器。[/b] GALACTICFSFX 背景用于拉丝和色差残影,前景用于红色洗色,各自有标准和 LOW 变体。[/]
[][b]星形方块散布——6 个着色器。[/b] POSTPROCESS FX_COMBINE,片段和计算,跨基础、GM 和 HDR 显示路径。[/]
[/list]全部二十六个着色器都位于 SHADERS\CODE\BIN\PC\ 中。每个效果都是它自己的文件或小组。删除你想恢复的部分。

[size=4][b]安装[/b][/size]

将 [font=Courier New]NakedEye[/font] 文件夹复制到 [font=Courier New]No Man's Sky\GAMEDATA\MODS\[/font]。松散文件夹,没有 pak。游戏首次启动时会显示模组确认画面;这是正常的。删除文件夹即可完全卸载。

[b]如果似乎没有加载[/b],检查 [font=Courier New]Binaries\SETTINGS\GCMODSETTINGS.MXML[/font] 中的 [font=Courier New]DisableAllMods[/font],确保它被设置为 [font=Courier New]false[/font]。那一行会静默禁用你安装的所有模组,它会让人中招。

[size=4][b]兼容性[/b][/size]

[b]与任何替换相同编译着色器的模组冲突。[/b] 这包括其他泛光移除器、镜头光晕移除器以及大多数「干净视觉」整合包。

与任何不触及 SHADERS\CODE\BIN\PC\ 的内容兼容——生物群系、生物、飞船、货船、UI、经济和多工具模组都没有问题。它与 [url=https://www.nexusmods.com/nomanssky/mods/4416][b]Void Black[/b][/url] 干净地共存;那个模组作用于星系地图和太空的[i]数据[/i],这个作用于着色器,两者不重叠任何一个文件。


[size=4][b]我的其他《无人深空》模组[/b][/size]

[list]
[][url=https://www.nexusmods.com/nomanssky/mods/4416][b]Void Black[/b][/url]——星系内黑色太空、黑色星系地图、一眼可读的星星颜色,以及移除环境雾霾和漂浮粒子。[/]
[][url=https://www.nexusmods.com/nomanssky/mods/4417][b]Salvage Rights[/b][/url]——每次护卫舰打捞都给你一个真正的组件,而不是 40% 的获得几率。一个文件中的两个数字,其他均未触动。[/]
[/list][size=4][b]致谢[/b][/size]

[list]
[][b]Lo2k[/b],其光晕移除模组是这里的先例,也是太阳光晕被认为存在于引擎侧且无法移除的原因。正是这一信念让检查它变得有价值。[/]
[][b]Khronos / SPIRV-Tools[/b]——spirv-dis、spirv-as 和 spirv-val,没有它们这一切都无法编辑。[/]
[][b]MBINCompiler / libMBIN[/b](monkeyman192 及贡献者)。[/]
[]Hello Games,感谢他们发布了一款着色器如此易读的游戏。[/]
[/list]