[Void Destroyer 2]|太空驱逐舰2-如何提高FPS(有效的技巧和调整)

[Void Destroyer 2]|太空驱逐舰2-如何提高FPS(有效的技巧和调整)

这是我为提高Void Destroyer 2(尤其是在低端系统上)的性能而提出的一系列技巧。

性能技巧和调整

介绍

我在低端笔记本电脑上停留了一段时间后发现了这一点,但是某些调整也会影响高端GPU的性能,尤其是在以4k分辨率运行时。

在我们开始之前:我不能保证这些黑客将在您的系统/ GPU上正常工作。

另外,其中一些涉及弄乱游戏文件,并且有可能您可能弄乱了安装,从而导致游戏无法启动。 如果发生这种情况,您可以在Steam内使用“属性->本地文件->验证游戏文件的完整性”命令进行修复(或作为最后的手段,卸载并重新安装)。

这不会以任何方式影响您的保存游戏(除非您出于某种原因在浏览游戏文件时手动将其删除...但是为什么要这么做?!)。

首先调整您的选项

使用这些调整时,您应该跟踪实际性能,以便知道它们是否有帮助。 在游戏中可以通过按Ctrl + Alt + F8来使用帧速率计数器。 确保您真正进入游戏并飞船; 您在主菜单或空间站内看到的帧速率性能并不代表您将在游戏中获得什么。

在弄乱游戏文件之前,请确保已完成显而易见的工作并调整了基本设置:降低分辨率; 尝试全屏和窗口模式,看看是否有所不同; 关闭卡通阴影和边缘突出显示,FSAA和SSAO; 关闭/关闭所有其他与性能相关的游戏选项(特别是关闭“游戏性-常规”下的“太空云(噪音)”选项)。

如果您的视频卡具有设置程序(例如Nvidia设置),请检查在那里应用的设置(全局设置和单个游戏配置文件,如果您的设置程序具有该选项),并确保将它们设置为最佳性能设置,并且未设置为覆盖游戏设置(例如强制启用抗锯齿)。

使用备用天空盒

最近的补丁修复了默认Skybox的性能,因此这可能不再对性能有所帮助。 但是,请随时尝试以防万一-也许在少数情况下它可能会有所帮助。



除了功能最强大的GPU外,这可能有助于提高所有性能。 即使在我相当强大(虽然稍旧)的GPU上,这也使20fps和50fps有所不同。

使用GPU片段着色器程序绘制您在空间中飞行时看到的默认“天空盒”(带有星空的背景),以计算分形图像。 它看起来很漂亮,但是却需要大量的计算,如果以高分辨率运行,这将不利于较旧或规格较低的图形芯片-甚至高端显卡的性能。

如果您要继续从另一台PC进行保存,或者您的游戏性能足以在介绍视频中播放并到达某个电台,但您确实希望这样会更好(或者您可以提高在以下位置播放的屏幕分辨率) ),尝试前往车站,然后在“其他升级”菜单中,购买您喜欢的外观的Skybox套件之一。

完全删除突出显示边缘的着色器

尽管可以从游戏选项菜单中关闭大多数边缘突出显示,但是目标选择显示在HUD和战术视图的右下框中均具有蓝色的始终处于活动状态的边缘突出显示。 在某些低端卡上,这可能会导致严重的性能下降(例如,在Intel HD 515上看到)。 但是,这似乎在高性能的视频卡上并没有明显的区别(尽管我没有做太多测试,所以可能是大多数Nvidia和AMD卡)。

警告:这涉及弄乱游戏文件。

请注意,如果遇到麻烦,请使用“验证游戏安装”选项恢复到正常状态。

较小的警告:禁用边缘突出显示会使HUD更加混乱,因为目标显示将与其他任何船只相同。


转到您的Void Destroyer 2安装目录。 通常是c:\ Program Files(x86)\ Steam \ SteamApps \ Common \ Void Destroyer 2,但使用Steam的“浏览本地文件”选项通常更容易。

  1. 在游戏目录中,转到Media \ materials \ programs目录。 您应该看到文件列表,其中大多数以“ .hlsl”结尾。
  2. 找到两个文件“ ToonEdge.hlsl”和“ ToonEdgeAlpha.hlsl”,我们希望阻止游戏加载它们,这将禁用所有边缘突出显示。
  3. 将这些文件重命名为其他名称:我建议在其名称的开头添加“ _d _”(表示“禁用”),这样您就可以轻松地在列表中看到它们,并在以后根据需要将其重命名。
  4. 启动游戏。 您应该看到不再突出显示目标的边缘,如果幸运的话,您的FPS也有所提高。


用渐变替换Fractal Skybox Shader

Chaosavy(游戏开发者)发布了一个补丁,修复了默认Skybox的性能-至少适用于高分辨率的台式机GPU。 我尚未在笔记本电脑上对其进行测试。 现在可能不需要2a和2b了-但是,如果有人想尝试更换着色器以查看会发生什么,我将把它们留在指南中以供参考。

原文继续:

如前所述,默认空间背景是使用GPU中的着色器程序实时生成的。 此技巧用不同的着色器替换了该着色器,该着色器生成了一个简单的渐变,从黑色地平线渐变到上方和下方的颜色。 如果您要开始新游戏并且性能使其无法播放,那么这种破解方法可能会让您如愿以偿–我能够将每秒1(一!)帧的速度提高到Intel HD515笔记本电脑上的30-40fps。

注意:这些着色器之一也用于“ Space Cloud(Noise)”​​游戏选项; 骇客入侵后,“空间云”将被雾度所取代,雾度随着您倾斜的角度越高而变得越来越厚-因此您可能需要在使用此功能时将其关闭。

创建渐变着色器文件

  1. 首先,我们需要创建将要使用的替代着色器。 转到游戏的安装文件夹,然后创建以下子目录: Mod \ Media \ materials \ programs
  2. 在该目录中,创建以下两个文件。 它们应为纯文本文件,但以“ .hlsl”扩展名命名-确保它不是“ .hlsl.txt”。 您可以使用任何文本编辑器将内容粘贴到其中。 注意:这两个文件非常相似,但不完全相同! 确保将正确的内容粘贴到每个文件中。




spacescape_noise_hlsl_fbm_fp.hlsl

struct PS_INPUT {float3 vertexPos:TEXCOORD;};

float3 innerColor;
float3 outsideColor;
float ditherAmt;
浮动收益;
float hdrMultiplier;
浮动hdrPowerAmt;
浮潜
浮点噪声标度;
浮动功率
浮动架子
int八度;

float4 main(PS_INPUT输入):COLOR
{
浮点foo = ditherAmt +增益+ hdrMultiplier + hdrPowerAmt +盲点性+ noiseScale + powerAmt + rackAmt +八度;
foo / = 131072;
float3 v = normalize(input.vertexPos);
return float4(lerp(outerColor,innerColor,vy + foo)* hdrMultiplier,1.0);
}


spacescape_noise_hlsl_ridged_fp.hlsl

struct PS_INPUT {float3 vertexPos:TEXCOORD;};

float3 innerColor;
float3 outsideColor;
float ditherAmt;
浮动收益;
float hdrMultiplier;
浮动hdrPowerAmt;
浮潜
浮点噪声标度;
浮点偏移
浮动功率
浮动架子
int八度;

float4 main(PS_INPUT输入):COLOR
{
浮点foo = ditherAmt +增益+ hdrMultiplier + hdrPowerAmt +盲点性+ noiseScale +偏移量+ powerAmt + rackAmt +八度;
foo / = 131072;
float3 v = normalize(input.vertexPos);
return float4(lerp(outerColor,innerColor,-vy + foo)* hdrMultiplier,1.0);
}


禁用原始着色器

我不确定这是否是错误,但是除非缺少原始着色器文件,否则游戏将不会从“ Mod”目录中读取新的着色器。

这些文件位于游戏的安装目录中的Media \ materials \ Programs下。 (注意:这与我们放入新着色器的目录几乎相同,但开头没有'Mod \'。)转到并在此目录中找到'spacescape_noise_hlsl _...'文件。



spacescape_noise _...文件将有四个,但您只需要禁用两个文件:“ spacescape_noise_hlsl_fbm_fp.hlsl”和“ spacescape_noise_hlsl_ridged_fp.hlsl”。 我建议重命名它们以在名称的开头添加“ _d _”(表示“ disabled”),以便您可以轻松地发现它们并在以后需要时重命名后面的名称。

最后,转到游戏的主安装目录,然后查找名为“ VD2Shader.cache”的文件。 这是游戏的已编译着色器的缓存; 您需要删除它以迫使游戏使用我们刚刚添加的新版本重新编译它们。



启动游戏-由于重新编译所有着色器,因此可能需要比平常更长的时间才能开始。 现在,您应该发现默认的天空背景是一个简单的渐变,地平线上是黑色,并且您的帧速率应该大大提高!

减少Skybox着色器的循环计数

这是调整2a的一种变体,由用户Otaku在评论中建议,知道在我的头像上。 它没有对渐变着色器进行渐变,而是对其进行了调整,以使其不会重复进行多次计算,从而提高了帧速率。 背景将比普通渐变更漂亮,但比原始版本要简单得多-这是一个示例:



为此,请按照与步骤4a相同的步骤进行操作,但在步骤2中,不要使用列出的内容创建新文件,而是从<game> \ Media \ materials \ programs-spacescape_noise_hlsl_fbm_fp复制两个原始文件.hlsl和spacescape_noise_hlsl_ridged_fp.hlsl-并将它们放在mods下的相同位置(<游戏> \ Mod \ Media \ materials \ programs)。

然后,使用文本编辑器打开每个窗口(例如,您可以将它们拖放到记事本上),并查找以下要更改的行。

spacescape_noise_hlsl_fbm_fp.hlsl

改变这个

浮动噪声总和= fbmNoise(noiseScale * v,八度,腔隙度,增益);

//添加大量的抖动噪声

noiseSum + = fbmNoise(v * 10000.0,2,盲度,增益)* ditherAmt;


对此

浮动噪声总和= fbmNoise(noiseScale * v,2,稀疏度,增益)+八度;

//添加大量的抖动噪声

noiseSum + = fbmNoise(v * 10000.0,2,盲度,增益)* ditherAmt-八度;


spacescape_noise_hlsl_ridged_fp

改变这个

浮动噪声总和= ridgedFbmNoise(noiseScale * v,八度,盲度,增益,偏移量);

//添加大量的抖动噪声

noiseSum + = ridgedFbmNoise(v * 10000.0,八度,盲度,增益,偏移量)* ditherAmt;


对此

浮点噪声总和= ridgedFbmNoise(noiseScale * v,2,稀疏度,增益,偏移)+八度;

//添加大量的抖动噪声

noiseSum + = ridgedFbmNoise(v * 10000.0,2,稀疏度,增益,偏移量)* ditherAmt-八度;


然后,继续执行4a中的步骤以禁用原始着色器并删除VD2shader.cache文件,以便使用新的着色器。

Read 18 times
Login to post comments
Go to top
Template by JoomlaShine