纹理流送与预算修复 MGSV FOX

纹理流送与预算修复 MGSV FOX

停止在重度模组化的MGSV中纹理流暂停和无限加载。使用你的真实显存而不是游戏的低估猜测,解除旧的纹理预算上限,防止流送器在其小型纹理池填满时停滞。减少纹理突然弹出。Infinite Heaven插件。Steam 1.0.15.4 英文版。

[right][size=4][i]“我们为什么还在这里?只是为了缓冲吗?”[/i][/size][/right]

[right][/right]

[center][/center]

[center][size=5][b]FOX 引擎纹理流送 / 预算修复[/b][/size][/center]

MGSV 是为旧硬件打造的。它低估 VRAM,把纹理预算限制在现代显卡能力之下,并且每帧只换入少量更高质量的纹理。再叠加纹理模组后,情况会更糟。当达到限制时,游戏可能会卡死,或加载画面挂起。[size=4][b]此修复:[/b][/size]

  • [b]使用你实际的 VRAM。[/b]它会从游戏所运行的显卡读取你真实的 VRAM,而不是采用游戏的低估猜测。
  • [b]更大的纹理预算。[/b]纹理缓存从约 1.4 GB 提升到约 3.5 GB。
  • [b]不再强制低质量模式。[/b]移除了限制以及会让游戏掉入该模式的检查。
  • [b]减少纹理弹出。[/b]以两倍速度换入更高质量的纹理(每帧 32 个,而不是 16 个),因此你更少看到模糊纹理,尤其是在驾驶时。可通过 [font=Courier New]patchUpgrade = false[/font] 关闭,或用 [font=Courier New]upgradePerFrame[/font] 调整(16 到 127)。
  • [b]修复大量纹理模组导致的停顿。[/b]游戏为每个纹理的最低细节版本保留一个小的固定池。当它填满时,整个流送器会停止并等待。此模组允许它改为溢出到主池中,因此不会卡死,也不会有模糊的回退纹理。

已用一个已知会使流送器过载的文件进行测试:驾驶时不再停顿,iDroid 正常加载,并且没有崩溃。[size=4][b]要求[/b][/size]

  • MGSV: The Phantom Pain,Steam 版本 1.0.15.4(英文 exe)
  • Infinite Heaven
  • SnakeBite

它会在执行任何操作前检查你的游戏 exe。在任何其他版本上它都不会做任何事,因此不会破坏你的游戏。[size=4][b]安装[/b][/size] 使用 SnakeBite 安装 zip 中的 .mgsv 文件。IH 会自动加载它。[size=4][b]设置[/b][/size] 所有内容都在 [font=Courier New]plugins\TextureStreamer.lua[/font] 中。默认值是大多数人想要的,因此你不需要改动它。更改任何内容后请重启游戏。[size=4][b]错误报告[/b][/size] 在 [font=Courier New]plugins\TextureStreamer.lua[/font] 中设置 [font=Courier New]debugLog = true[/font],游玩直到问题发生,关闭游戏,然后上传与你 mgsvtpp.exe 同目录下的 [font=Courier New]TextureStreamer.log[/font],并附上发生了什么事的描述。[size=4][b]已知限制[/b][/size]

  • 游戏一次可以跟踪约 4880 个流送纹理,这已内建在引擎中。非常重的纹理包仍可能达到该限制。我测试所用的文件峰值约为 3800。
  • 预算上限为 4 GB,因为游戏将其存储为 32 位值。这仍远高于流送器实际使用的量。

[size=4][b]致谢[/b][/size]

  • ClearEdge,感谢用于读取 VRAM 的交换链方法
  • IHHook,感谢 Present 模式
  • Infinite Heaven 和 MGSV_HookSample
  • MinHook