>> Spielanleitung >  >> Spielanleitungen

Void Destroyer 2 – So steigern Sie die FPS (Working Hacks and Tweaks)

Dies ist eine Sammlung von Hacks, die ich mir ausgedacht habe, um die Leistung in Void Destroyer 2 zu verbessern, insbesondere auf Low-End-Systemen.

Performance-Hacks und -Optimierungen

Einführung

Ich habe das entdeckt, als ich eine Weile mit einem Low-End-Laptop feststeckte, aber einige der Optimierungen können auch die Leistung von High-End-GPUs beeinträchtigen, insbesondere wenn Sie mit einer Auflösung von 4k arbeiten.

Bevor wir beginnen:Ich kann nicht versprechen, dass diese Hacks auf Ihrem System/GPU funktionieren. Darüber hinaus beinhalten einige davon das Herumspielen mit den Spieldateien, und es ist möglich, dass Sie Ihre Installation durcheinander bringen, sodass das Spiel nicht startet. Wenn dies passiert, können Sie es mit dem Befehl „Eigenschaften -> Lokale Dateien -> Integrität der Spieldateien überprüfen“ in Steam beheben (oder als letzten Ausweg Deinstallation und Neuinstallation).

Dies wirkt sich in keiner Weise auf Ihre gespeicherten Spiele aus (es sei denn, Sie löschen sie aus irgendeinem Grund manuell, während Sie die Spieldateien durchsuchen ... aber warum sollten Sie das tun?!).

Passen Sie zuerst Ihre Optionen an

Wenn Sie diese Optimierungen verwenden, sollten Sie Ihre tatsächliche Leistung im Auge behalten, damit Sie feststellen können, ob sie helfen oder nicht. Im Spiel ist ein Framerate-Zähler verfügbar, indem Sie Strg+Alt+F8 drücken. Stellen Sie sicher, dass Sie tatsächlich ins Spiel gehen und Ihr Schiff herumfliegen; Die Framerate, die du im Hauptmenü oder in einer Raumstation siehst, ist kein Hinweis darauf, was du im Spiel bekommst.

Bevor Sie mit den Spieldateien herumspielen, vergewissern Sie sich, dass Sie das Offensichtliche getan und die Grundeinstellungen angepasst haben:Verringern Sie die Auflösung; Probieren Sie den Vollbild- und den Fenstermodus aus und sehen Sie, ob es einen Unterschied macht; Deaktivieren Sie Toon-Schattierung und Kantenhervorhebung, FSAA und SSAO; Schalten Sie alle anderen Spieloptionen, die leistungsabhängig erscheinen, herunter/aus (insbesondere schalten Sie die Option „Weltraumwolke (Rauschen)“ unter Gameplay – Allgemein aus).

Wenn Ihre Grafikkarte über ein Einstellungsprogramm verfügt (z. B. Nvidia-Einstellungen), überprüfen Sie die dort angewendeten Einstellungen (sowohl globale Einstellungen als auch individuelle Spielprofile, falls Ihr Einstellungsprogramm diese Option hat) und stellen Sie sicher, dass sie auf die besten Leistungseinstellungen eingestellt sind , und nicht so eingestellt, dass Spieleinstellungen außer Kraft gesetzt werden (z. B. Antialiasing erzwingen).

Verwenden Sie eine alternative Skybox

Ein neuer Patch hat die Leistung der Standard-Skybox korrigiert, sodass dies wahrscheinlich nicht mehr zur Leistung beiträgt. Sie können es jedoch für alle Fälle ausprobieren – vielleicht gibt es ein paar seltene Fälle, in denen es helfen könnte.

Dies wird wahrscheinlich die Leistung auf allen außer den leistungsstärksten GPUs verbessern. Sogar auf meiner ziemlich leistungsstarken (wenn auch etwas älteren) GPU machte dies den Unterschied zwischen 20 fps und 50 fps aus.

Die standardmäßige „Skybox“ (Hintergrund mit Weltraum und Sternen), die Sie sehen, während Sie durch den Weltraum fliegen, wird mit einem GPU-Fragment-Shader-Programm gezeichnet, um ein Fraktalbild zu berechnen. Es sieht zwar sehr hübsch aus, erfordert aber viel Berechnung, was sich negativ auf die Leistung älterer oder leistungsschwächerer Grafikchips auswirkt – oder sogar High-End-Karten, wenn Sie mit hoher Auflösung arbeiten.

Wenn Sie mit einem Speichervorgang von einem anderen PC fortfahren oder Ihre Spielleistung gerade gut genug ist, um das Intro durchzuspielen und zu einer Station zu gelangen, aber Sie wirklich wünschen, dass es besser wäre (oder dass Sie die Bildschirmauflösung erhöhen könnten, auf der Sie spielen ), versuchen Sie, zu einer Station zu gehen, und kaufen Sie im Menü "Andere Upgrades" eines der Skybox-Pakete, das Ihnen gefällt.

Kantenhervorhebungs-Shader vollständig entfernen

Obwohl Sie die meisten Kantenhervorhebungen im Spieloptionsmenü deaktivieren können, hat die Zielauswahlanzeige eine immer aktive Kantenhervorhebung in Blau, sowohl im HUD als auch im unteren rechten Feld in der taktischen Ansicht. Bei einigen Low-End-Karten kann dies zu erheblichen Leistungseinbußen führen (z. B. bei Intel HD 515). Dies scheint jedoch auf einer leistungsstärkeren Grafikkarte keinen merklichen Unterschied zu machen (also wahrscheinlich die meisten Nvidia- und AMD-Karten, obwohl ich nicht viel getestet habe).

Warnung:Dies beinhaltet das Durcheinander von Spieldateien. Seien Sie vorsichtig und verwenden Sie bei Problemen die Option „Spielinstallation überprüfen“, um den normalen Zustand wiederherzustellen.

Kleinere Warnung:Das Deaktivieren der Kantenhervorhebung kann das HUD verwirrender machen, da die Zielanzeige genauso aussieht wie bei jedem anderen Schiff.

  1. Gehen Sie zu Ihrem Void Destroyer 2-Installationsverzeichnis. Normalerweise ist es c:Program Files (x86)SteamSteamAppsCommonVoid Destroyer 2, aber es ist normalerweise einfacher, die Steam-Option „Lokale Dateien durchsuchen“ zu verwenden.
  2. Gehe innerhalb des Spielverzeichnisses zum Verzeichnis Mediamaterialsprograms. Sie sollten eine Liste mit Dateien sehen, von denen die meisten auf „.hlsl“ enden.
  3. Suchen Sie die beiden Dateien „ToonEdge.hlsl“ und „ToonEdgeAlpha.hlsl“. Wir möchten verhindern, dass das Spiel diese lädt, wodurch die Kantenhervorhebung deaktiviert wird.
  4. Benennen Sie diese Dateien in etwas anderes um:Ich empfehle, „_d_“ (für „deaktiviert“) am Anfang ihrer Namen hinzuzufügen, damit Sie sie in der Liste leicht sehen und später wieder umbenennen können, wenn es nötig ist.
  5. Starte das Spiel. Sie sollten sehen, dass die Kantenhervorhebung für Ziele nicht mehr vorhanden ist, und wenn Sie Glück haben, haben sich Ihre FPS verbessert.

Ersetzen Sie den Fraktal-Skybox-Shader durch einen Farbverlauf

Chaosavy (Spielentwickler) hat einen Patch veröffentlicht, der die Leistung der Standard-Skybox behebt – zumindest für Desktop-GPUs bei hoher Auflösung; Auf meinem Laptop habe ich es noch nicht getestet. Die Chancen stehen gut, dass 2a und 2b jetzt nicht mehr notwendig sind – ich werde sie jedoch als Referenz in der Anleitung belassen, falls jemand mit dem Ersetzen der Shader experimentieren möchte, um zu sehen, was passiert.

Originaltext Fortsetzung:

Wie bereits erwähnt, wird der standardmäßige Raumhintergrund mithilfe eines Shader-Programms in der GPU in Echtzeit generiert. Dieser Hack ersetzt diesen Shader durch einen anderen, der einen einfachen Farbverlauf vom schwarzen Horizont, der zu den Farben darüber und darunter verblasst, erzeugt. Wenn Sie ein neues Spiel starten und die Leistung es unmöglich macht, es zu spielen, kann dieser Hack Sie auf Trab bringen – ich konnte mich auf einem Intel HD515-Laptop von 1 (einem!) Frame pro Sekunde auf 30–40 fps verbessern. P>

Hinweis:Einer dieser Shader wird auch für die Gameplay-Option „Space Cloud (Noise)“ verwendet; Nach diesem Hack werden die „Weltraumwolken“ durch einen Schleier ersetzt, der dichter wird, je höher Sie Ihre Ansicht neigen – also sollten Sie diese Option deaktivieren, wenn Sie sie verwenden.

Verlaufs-Shader-Dateien erstellen

  1. Zuerst müssen wir die alternativen Shader erstellen, die wir verwenden werden. Gehen Sie zum Installationsordner des Spiels und erstellen Sie die folgenden Unterverzeichnisse: ModMediamaterialsprograms
  2. Erstellen Sie in diesem Verzeichnis die folgenden beiden Dateien. Sie sollten reine Textdateien sein, aber mit der Erweiterung „.hlsl“ benannt werden – stellen Sie sicher, dass es nicht „.hlsl.txt“ ist. Sie können einen beliebigen Texteditor verwenden, um den Inhalt darin einzufügen. Hinweis:Die beiden Dateien sind sehr ähnlich, aber nicht identisch! Stellen Sie sicher, dass Sie den richtigen Inhalt in jede Datei einfügen.

spacescape_noise_hlsl_fbm_fp.hlsl

struct PS_INPUT {float3 vertexPos :TEXCOORD;};

float3 innerColor;
float3 outerColor;
float ditherAmt;
float gain;
float hdrMultiplier;
float hdrPowerAmt;
float lacunarity;
float NoiseScale;
float powerAmt;
float shelfAmt;
int octaves;

float4 main(PS_INPUT input) :COLOR
{
    float foo =ditherAmt + gain + hdrMultiplier + hdrPowerAmt + lacunarity + noiseScale + powerAmt + ShelfAmt + octaves;
    foo /=131072;
    float3 v =normalize(input.vertexPos);
    return float4(lerp(outerColor, innerColor, v.y + foo) * hdrMultiplier, 1.0);
}

spacescape_noise_hlsl_ridged_fp.hlsl

struct PS_INPUT {float3 vertexPos :TEXCOORD;};

float3 innerColor;
float3 outerColor;
float ditherAmt;
float gain;
float hdrMultiplier;
float hdrPowerAmt;
float lacunarity;
float NoiseScale;
float offset;
float powerAmt;
float shelfAmt;
int octaves;

float4 main(PS_INPUT input) :COLOR
{
    float foo =ditherAmt + gain + hdrMultiplier + hdrPowerAmt + lacunarity + noiseScale + offset + powerAmt + ShelfAmt + octaves;
    foo /=131072;
    float3 v =normalize(input.vertexPos);
    return float4(lerp(outerColor, innerColor, -v.y + foo) * hdrMultiplier, 1.0);
}

Deaktivieren Sie die ursprünglichen Shader

Ich bin mir nicht sicher, ob dies ein Fehler ist, aber das Spiel liest die neuen Shader nicht aus dem „Mod“-Verzeichnis, es sei denn, die ursprünglichen Shader-Dateien fehlen. Diese Dateien befinden sich im Installationsverzeichnis des Spiels unter MediamaterialsPrograms. (Hinweis:Dies ist fast das gleiche wie das Verzeichnis, in dem wir die neuen Shader abgelegt haben, aber ohne den „Mod“ am Anfang.) Gehen Sie und suchen Sie die „spacescape_noise_hlsl_…“-Dateien in diesem Verzeichnis.

Es wird vier der spacescape_noise_…-Dateien geben, aber Sie müssen nur zwei deaktivieren:„spacescape_noise_hlsl_fbm_fp.hlsl“ und „spacescape_noise_hlsl_ridged_fp.hlsl“. Ich empfehle, sie so umzubenennen, dass am Anfang des Namens „_d_“ steht (was „deaktiviert“ anzeigt), damit Sie sie leicht erkennen und die Rückseite bei Bedarf später umbenennen können.

Gehen Sie schließlich in das Hauptinstallationsverzeichnis des Spiels und suchen Sie nach einer Datei mit dem Namen „VD2Shader.cache“. Dies ist der Cache der kompilierten Shader für das Spiel; Sie müssen sie löschen, um das Spiel zu zwingen, sie mit der gerade hinzugefügten neuen Version neu zu kompilieren.

Starten Sie das Spiel – es wird wahrscheinlich etwas länger dauern als gewöhnlich, um zu starten, da alle Shader neu kompiliert werden. Sie sollten jetzt feststellen, dass der standardmäßige Himmelshintergrund ein einfacher Farbverlauf mit Schwarz am Horizont ist, und Ihre Bildrate sollte erheblich verbessert werden!

Reduzieren Sie die Schleifenanzahl des Skybox-Shaders

Dies ist eine Variation von Tweak 2a, die in einem Kommentar von Benutzer Otaku auf meinem Avatar vorgeschlagen wurde. Anstatt den Shader durch einen Verlauf zu ersetzen, wird der Shader so angepasst, dass er seine Berechnungen nicht so oft wiederholt, was zu einer besseren Framerate führt. Der Hintergrund wird hübscher als der einfache Farbverlauf, aber immer noch viel einfacher als die Originalversion – hier ist ein Beispiel:

Um dies auf diese Weise zu tun, folgen Sie den gleichen Schritten wie in 4a, aber erstellen Sie bei Schritt 2, anstatt neue Dateien mit den aufgelisteten Inhalten zu erstellen, eine Kopie der ursprünglichen zwei Dateien von Mediamaterialsprograms — spacescape_noise_hlsl_fbm_fp.hlsl und spacescape_noise_hlsl_ridged_fp.hlsl — und platzieren Sie sie an derselben Stelle unter Mods (ModMediamaterialsprograms).

Öffnen Sie dann jede mit einem Texteditor (Sie können sie beispielsweise per Drag-and-Drop auf Notepad ziehen) und suchen Sie nach den folgenden zu ändernden Zeilen.

spacescape_noise_hlsl_fbm_fp.hlsl

Ändere dies

float noiseSum =fbmNoise(noiseScale * v, octaves, lacunarity, gain);

// eine verrückte Menge Dithering-Rauschen hinzufügen

NoiseSum +=fbmNoise(v * 10000.0, 2, Lücken, Verstärkung) * ditherAmt;

dazu

float noiseSum =fbmNoise(noiseScale * v, 2, lacunarity, gain) + octaves;

// eine verrückte Menge Dithering-Rauschen hinzufügen

NoiseSum +=fbmNoise(v * 10000.0, 2, lacunarity, gain) * ditherAmt – octaves;

spacescape_noise_hlsl_ridged_fp

ändere dies
    
float noiseSum =ridgedFbmNoise(noiseScale * v, octaves, lacunarity, gain, offset);

// eine verrückte Menge Dithering-Rauschen hinzufügen

NoiseSum +=ridgedFbmNoise(v * 10000.0, octaves, lacunarity, gain, offset) * ditherAmt;

dazu

float noiseSum =ridgedFbmNoise(noiseScale * v, 2, lacunarity, gain, offset) + octaves;

// eine verrückte Menge Dithering-Rauschen hinzufügen

NoiseSum +=ridgedFbmNoise(v * 10000.0, 2, lacunarity, gain, offset) * ditherAmt – octaves;

Fahren Sie dann mit den Schritten in 4a fort, um die ursprünglichen Shader zu deaktivieren und die Datei VD2shader.cache zu löschen, damit die neuen Shader verwendet werden.


Spielanleitungen