Mafia II – PhysX-Optimierung

Mafia II - PhysX-Optimierung

Zur Physikberechnung setzt Mafia II auf NVIDIAs PhysX und dessen APEX-Modul. Was allerdings beeindruckend aussieht, kostet extrem viel Leistung. Selbst eine GeForce GTX480 kommt so an ihre Grenzen.

Dieser Optimierungs-Guide zeigt Möglichkeiten auf, die PhysX-Performance stark zu verbessern, ohne dass die grafische Qualität des Spiels merklich darunter leidet. Grundlage für diesen Guide ist der Artikel von den PhysX-Experten von PhysXInfo.com.

1. Voraussetzungen

Damit ihr PhysX samt APEX in seiner vollen Pracht überhaupt nutzen könnt, muss zwingend eine NVIDIA Grafikkarte in eurem Rechner stecken. Zudem wird empfohlen, die PhysX-Treiber (Download) stets aktuell zu halten.

2. Das Testsystem

Alle hier aufgezeigten Optimierungen und dessen Benchmarkergebnisse basieren auf diesem Testsystem:

  • Intel Core2Quad Q9400 @ 2,67 GHz
  • 4 GB RAM
  • NVIDIA GeForce GTX470 (GPU-PhysX aktiviert)
  • Auflösung: 1280×720 Pixel @ 120 Hz

3. Optimierungen

3.1 APEX Clothing Modul deaktivieren

Das APEX Clothing Modul zeigt sich dafür verantwortlich, Verhalten und Bewegung von Kleidung und Stoffen bei Vito und den NPCs realistisch darzustellen. Es ist zudem auch das Modul, welches am meisten Leistung frisst und sich daher am besten zur Optimierung eignet.

Wer komplett ohne realistische Kleidung leben kann, öffnet diesen Pfad:

\Steam\steamapps\common\mafia ii( – public demo)\edit\APEX

und löscht (Backup nicht vergessen) das Verzeichnis namens:

Cloth

Damit werden alle APEX Funktionen entfernt und die Kleidung der Charaktere ist starr. Sämtliche Partikeleffekte bleiben erhalten!

mafia2_wo_cloth

Das Ergebnis: Keine realistisch simulierte Kleidung, aber ein extremer Leistungsgewinn. Durschnittlich 70 FPS im Vergleich zu 25 FPS ohne diesen Trick.

3.2 APEX Clothing Modul einschränken

Alternativ zur Deaktivierung des kompletten Moduls, kann man dessen Funktionen auch einschränken. So ist es möglich, die Simulation der Kleidung bei den NPCs zu deaktiveren, bei Vito jedoch funktionstüchtig zu lassen.

Öffne diesen Pfad:

\Steam\steamapps\common\mafia ii( – public demo)\edit\APEX\Cloth

Lösche alle Dateien bis auf die, die mit „VIT*“ beginnen. Außerdem müssen die Dateien „m2skeleton” und “ClothRemapTableerhalten bleiben.

mafia2_wo_cloth2

Voilà! Dynamische Kleidung bei Vito, ohne dass die NPCs die FPS unnötig in den Keller treiben. Zuvor dümpelten die FPS in der obigen Szene bei 20-25 FPS umher, ohne die dynamische Kleidung der NPCs steigen sie auf 60+ FPS.

Das Beste daran: Mit diesen Tweaks ist es sogar möglich aktiviertes PhysX und APEX komplett über die CPU berechnen zu lassen. Dazu muss lediglich das GPU-PhysX in der NVIDIA Systemsteuerung deaktiviert werden.

mafia2_wo_cloth3

Der verbaute Core2Quad Q9400 reichte dabei für die mittlere PhysX-Stufe aus. Mit dem eingeschränkten Clothing Modul wurden so 30+ FPS erreicht. Ein Kompromiss, der auch AMD-Nutzer ansprechen dürfte (alternativ zum Hybrid-PhysX).

Hier ein paar weitere Impressionen von den bisherigen Tricks:

mafia2_tweak_1 mafia2_tweak_2 mafia2_tweak_3 mafia2_tweak_4 mafia2_tweak_5 mafia2_tweak_6 mafia2_tweak_7 mafia2_tweak_8

3.3 APEX Partikel Effekte

Um die Bilder pro Sekunde noch weiter zu steigern, kann man die APEX Partikeleffekte (umherfliegende Trümmer, Rauch, etc.) ebenfalls entfernen.

Öffne diesen Pfad:

\Steam\steamapps\common\mafia ii( – public demo)\edit\APEX

Lösche anschließend den Effects Ordner (Backup nicht vergessen).

mafia2_wo_particles

Um einen Leistungs-Kompromiss zu finden, kann man auch einzelne Effekte deaktivieren. Der obige Screenshot zeigt keine Partikel- und Kleidungseffekte bei NPCs, sehrwohl aber bei Vito.

Das System ist dabei sehr flexibel. Man kann einzelne Effekte durch das simple Löschen bestimmter .aea Dateien (steht für APEX Emitter Asset) deaktivieren, welche sich in folgenden Ordner befinden:

Steam\steamapps\common\mafia ii( – public demo)\edit\APEX\Effects\Assets\Emitters

Das Löschen der burnout.aea entfernt die beeindruckenden Rauchwolken bei Reifenburnouts. Alle anderen Partikeleffekte bleiben erhalten.

mafia2_wo_burnout1 mafia2_wo_burnout2

Löscht man die vybuch_auto.aea sieht man bei den Explosionen der Fahrzeuge keine umherfliegenden Teile mehr.

mafia2_wo_particles3-1 mafia2_wo_particles3

Diese Vorgehensweise lässt viel Spielraum für Experimente.