幻兽帕鲁性能修复

幻兽帕鲁性能修复

将《上古卷轴4:湮灭重制版》性能修复移植到《幻兽帕鲁》:把GPU蒙皮骨骼上传中缓慢的掩码存储替换为普通存储。输出结果相同,渲染线程CPU占用更低。Steam v1.0.5。

[size=5][b]Palworld 性能修复[/b][/size]

这是 [url=https://github.com/LTSharpe/OblivionRemasteredPerformanceFix]LTSharpe 的 Oblivion Remastered 性能修复[/url](MIT 许可证)的 Palworld 移植版。该项目中的修复项里,代码与 Palworld 相符的那一项被包含进来:[b]BoneUploadStores[/b]。

[size=4][b]功能说明[/b][/size]
Palworld 的 GPU 蒙皮代码使用[i]掩码[/i] 32 字节存储来上传每个骨骼矩阵,而该存储始终写入相同的 16 字节。目标是写合并上传内存,在这种内存上掩码存储很慢,尤其是在 AMD CPU 上。本模组将五处此类存储替换为普通的 16 字节存储。

[list]
[]写入的字节完全相同:游戏外观完全一致。[/]
[]磁盘上的游戏 exe 永远不会被修改;更改在启动时于内存中进行。[/]
[]打补丁前会检查确切的游戏构建版本以及它触及的每条指令。若有任何不同,则不打任何补丁,游戏照常运行。[/]
[/list][size=4][b]支持的版本[/b][/size]
Steam,Palworld [b]v1.0.5[/b](build 25246127)。在任何其他版本(游戏更新、Game Pass)上它不做任何事。每次 Palworld 更新后都需要本模组的新版本。

[size=4][b]安装[/b][/size]
[b]Vortex:[/b] 通过 Mod Manager 下载,或像其他模组一样安装 zip。
[b]手动:[/b] 解压到 Palworld 文件夹。两个文件会落到 [i]Pal\Binaries\Win64[/i]:version.dll 和 PalworldPerfFix.ini。

[b]检查是否生效:[/b] 启动游戏后,[i]Pal\Binaries\Win64\PalworldPerfFix.log[/i] 的结尾应为
[code]
[bone] 5/5 sites applied; original page protections restored.[/code][size=4][b]兼容性[/b][/size]
[list]
[]可与 UE4SS 一起使用(UE4SS 通过 dwmapi.dll 加载)。[/]
[]不能与另一个自带 version.dll 的模组同时使用:只能安装其中一个。[/]
[]无需卸载即可关闭:在 PalworldPerfFix.ini 中设置 BoneUploadStores=0。[/]
[/list][size=4][b]预期效果[/b][/size]
收益在 CPU 侧(渲染线程),屏幕上角色越多收益越大。它尚未单独进行基准测试;当你的 GPU 是瓶颈时,差异可能很小。已在 ROG Xbox Ally X(Ryzen Z2 Extreme)上测试:应用 5/5,游玩中无崩溃。

[size=4][b]致谢[/b][/size]
[list]
[][url=https://github.com/LTSharpe/OblivionRemasteredPerformanceFix]LTSharpe[/url] 及贡献者:原始修复与研究(MIT)。[/]
[]在 AI 工具(OpenAI Codex 和 Anthropic 的 Claude)的帮助下完成移植和测试。[/]
[/list]