GTA IV 正式版草地

GTA IV 正式版草地

适用于GTA IV 1.2.0.59的GPU实例化程序化草地。填补游戏中从未种植的空旷公园、中央隔离带和斜坡,移除植物对象上限,并通过柔和淡出而非突然出现来延伸更远。兼容FusionFix、DXVK和DLSS-IV。

GTA IV Proper Grass

面向 GTA IV Complete Edition 1.2.0.59 的 GPU 实例化程序化植被。

GTA IV 的草地有两个长期存在的问题:许多草地表面完全没有植被,而有植被的表面又会耗尽植物对象,并在某些摄像机角度下突然出现和消失。Proper Grass 解决了这两个问题。它保留了游戏原有的植物和外观,但使用硬件实例化来绘制它们,因此更密集、更远距离的草坪只消耗少量绘制调用。

功能

  • 在游戏原本没有草的地方添加草。 材质 GRASS、SHORT_GRASS、GRASS_PATCHY 和 GRASS_LONG 在发布时没有程序化标签,因此公园、中央隔离带和斜坡保持光秃。该模组为它们添加了标签。
  • 不再有对象限制。 植物三角形池从 512 增加到 16384,植物作为实例绘制,而不是每个都作为一个游戏对象。
  • 更远的覆盖范围,无突然出现。 植物在最后几米内柔和地生长出现。
  • 干净的边界。 植物不再蔓延到沥青或人行道上。
  • 视锥剔除 保持 GPU 开销低廉。

要求

  • GTA IV Complete Edition 1.2.0.59(Steam)。不支持其他版本;模组会检查可执行文件,如果不匹配则禁用自身。
  • 一个 ASI 加载器。FusionFix 包含一个。
  • d3dx9_43.dll(由游戏附带的 DirectX 可再发行组件安装)。

安装

将归档文件 plugins 文件夹中的 GTAIV.ProperGrass.asi 和 ProperGrass.ini 复制到 GTAIV.exe 旁边的 plugins 文件夹中(或你的 ASI 加载器读取插件的任何位置)。要卸载,删除这两个文件。

设置

一切都在 ProperGrass.ini 中:草地半径(RadiusMultiplier、DrawDistance)、淡入宽度、密度、边缘边距、剔除以及草地材质列表。植物半径 = (20 + 0.5 x Detail Distance) x RadiusMultiplier,因此游戏内的 Detail Distance 滑块仍然重要。

性能

使用内置分析器测量(RTX 5070 Ti、i7-14700KF、1440p、Meadows Park)。帧率随交通变化,因此请在你自己的系统上使用分析器:在 INI 中设置 Profile=1 和 ToggleKey=0x76 以查看屏幕面板,并在 MOD / VANILLA 之间实时切换(F7)。

  • View/Detail/Vehicle 100/100/100:原版 70-117 fps,模组 71-119 fps(约少 300 次绘制调用)。
  • FusionFix 推荐 27/31/50:原版约 200 fps,模组约 170 fps,1% 低帧不变,草地覆盖范围约为 1.5 倍远。
  • 模组的开销:主线程约 0.2-0.4 毫秒,渲染线程低于 0.1 毫秒,GPU 时间 0.5-0.8 毫秒。

与 Grass and Procedural Props Fix 的比较

Grass and Procedural Props Fix 提高了游戏程序化对象存储的限制,使游戏能容纳更多对象。Proper Grass 将植物从该对象系统中取出,并作为 GPU 实例绘制,还填充了游戏从未填充的草地表面。那个模组还覆盖其他程序化道具和更多游戏版本。两者都改变植物限制,因此请一次只运行一个;它们尚未一起测试过。

已知限制

  • 机场高速公路中央隔离带的草地下方有混凝土碰撞,保持光秃。
  • 少数植物模型无法实例化,仍作为普通游戏对象存在。
  • 草地在汽车前灯下看起来和原版一样有光泽。
  • 仅支持 1.2.0.59。这是测试版:请报告崩溃并附上 ProperGrass.log。

兼容性

已使用 FusionFix、DXVK 和 DLSS-IV 插件测试。 尚未测试:不使用 DXVK 的原生 D3D9。

源代码

开源(MIT):github.com/paulopatine/GTAIV.ProperGrass

致谢

灵感来自 SA Proper Shaders。ThirteenAG 提供 FusionFix。与 Rockstar Games 无关。