Technik [FAQ] Performance in Oblivion

Ich weiß nicht mehr genau, welche Einträge das waren. Im Allgemeinen der gesamte Oblivion.ini-Teil und ein paar Mods zur Verbesserung der Performance habe ich hinzugefügt, außerdem wie gesagt alle tessource-Links in tesnexus-Links umbenannt. Irgendwann kommt vielleicht noch ein verbesserter HDR- und/oder Bloom-Shader hinzu, der etwas besser aussieht als der originale.

edit: Habe eben gerade z.B. RPG-BlackDragons LowPolyTrees in die Modliste getan, eine Mod, die die Polygonzahl der Bäume drastisch reduziert. Streamline und Oliblivion standen vorher auch nicht drin. Einfach mal den ini-Guide und die Downloadlisten durchsehen, nur da habe ich etwas verändert.
 
Zuletzt bearbeitet:
@Fellan

Mir ist folgendes aufgefallen:
Zitat:
iPreloadSizeLimit=615214400 / Einer der wichtigsten Werte, um Nachladeruckler zu vermeiden. Bei 1GB RAM stellt die .ini Oblivion standardmäßig nur 25MB zu Verfügung - viel zu wenig. Der Wert wird in Bytes angegeben. Bei einem GB Arbeitsspeicher sollte man den Wert verdoppeln oder verdreifachen, maximal sollte man aber die Hälfte seines Arbeitsspeichers zur Verfügung stellen. Kann Nachladeruckler fast komplett entfernen und die FPS enorm steigern. Für 1 GB empfehle ich einen Wert von 615214400, je nach Hintergrundaktivität sogar noch mehr. Der Wert hat einen Multiplikator von 8 und wird in Bytes angegeben. Ihr solltet mindestens die Hälfte eures Arbeitsspeichers angeben. Wie gesagt, bei 1GB empfehle ich 615214400, wenn ihr weniger bzw. mehr habt, könnt ihr den Wert einfach halbieren bzw. verdoppeln.

Dieser Wert ist das ca. 23.5! fache des Standardwertes.
Des Weiteren gibst Du an, maximal den halben Speicher freizugeben.
Später soll man minimal den halben Speicher nutzen. Welchen
Wert hast Du denn nun wirklich in deiner Ini zu stehen?
Vielleicht hast Du in deiner Ini eine Null weniger?



Apropos %: Gib doch besser prozentuale Werte anstatt Framewerte an, denn eine Steigerung von 10 Frames bei 20 Frames sind 50%, bei 40F sind es
dagegen nur noch 25%. Es weiß ja niemand, wie hoch deine Ausgangswerte
sind/waren (nur ein gutgemeinter Tipp)
 
Zuletzt bearbeitet:
Ein Tipp für alle, die sich die Arbeit nur einmal machen wollen:
Sucht euch, die INI-Anpassungen raus, die für euch gut sind und öffnet den Oblivion Mod Manager. Da dann auf "Create" und dann "Edit Script". Im folgenden Fenster müsst ihr nur noch die rausgesuchten Änderungen in der richtigen Syntax aufschreiben. Und zwar immer:

EditINI [Sektion] "Schlüssel" "Wert"

[Sektion] entspricht dem Abschnitt in der Oblivion.ini, Schlüssel und Wert werden in nem Beispiel am deutlichsten.

z.B folgender Abschnitt aus Fellans Tipps:
# bAllowConsole=1 / Bestimmt, ob man im Spiel die Konsole mit "^" öffnen kann oder nicht

Schlüssel ist "bAllowConsole", der zugewiesene Wert soll 1 sein. (Bzw. der Wert, der für euch der ngewünschte ist.) bAllowConsole steht im Abschnitt [Interface], also ergibt sich folgende Zeile im Script:

EditINI [Interface] "bAllowConsole" "1"

Wichtig dabei: Kein Gleich-Zeichen zwischen Parameter und Wert, also NICHT "bAllowConsole"="1" !!!

Jetzt einfach für jede Änderung so eine Zeile erstellen, das Script-Fenster schließen und auf JA klicken. Dann dem ganzen nen aussagekräftigen Namen geben und "Create Mod".

Jetzt taucht das Ding in Eurer OMOD-Liste auf und wenn ihrs aktiviert, werden alle Änderungen nach Bestätigung vorgenommen. Das beste ist: Ein Klick und alle Änderungen sind wieder rückgängig gemacht.

Als Beispiel noch zum Schluss, wie das ganze bei mir aussieht: ( EDIT: Nur als Beispiel, nur für mein System gedacht. Macht besser eure eigenen Eintragungen nach Fellans Tipps, nicht diese Liste kopieren! )
EditINI [General] "bBorderRegionsEnabled" "0"
EditINI [General] "uInterior Cell Buffer" "32"
EditINI [General] "uExterior Cell Buffer" "1024"
EditINI [General] "iPreloadSizeLimit" "1538036000"
EditINI [General] "bUseThreadedBlood" "1"
EditINI [General] "bUseThreadedMorpher" "1"
EditINI [General] "bUseThreadedTempEffects" "1"
EditINI [General] "bUseThreadedParticleSystem" "1"

EditINI [MAIN] "bEnableBorderRegion" "0"

EditINI [Controls] "bUse Joystick" "0"

EditINI [BackgroundLoad] "bBackgroundLoadLipFiles" "1"
EditINI [BackgroundLoad] "bLoadBackgroundFaceGen" "1"
EditINI [BackgroundLoad] "bBackgroundCellLoads" "1"
EditINI [BackgroundLoad] "bLoadHelmetsInBackground" "1"
EditINI [BackgroundLoad] "iBackgroundLoadLoading" "1"
EditINI [BackgroundLoad] "bUseMultiThreadedTrees" "1"

EditINI [BackgroundLoad] "bUseMultiThreadedFaceGen" "1"

EditINI [HAVOK] "iNumHavokThreads" "3"

EditINI [OPENMP] "iThreads" "10"
EditINI [OPENMP] "iOpenMPLevel" "10"

EditINI [Pathfinding] "bBackgroundPathing" "1"

EditINI [SpeedTree] "iCanopyShadowScale" "384"

EditINI [Water] "fSurfaceTileSize" "4096.0000"

EditINI [BlurShaderHDRInterior] "fTargetLUM" "1.1000"
EditINI [BlurShaderHDRInterior] "fUpperLUMClamp" "0.9000"
EditINI [BlurShaderHDRInterior] "fEmissiveHDRMult" "5.0000"
EditINI [BlurShaderHDRInterior] "fEyeAdaptSpeed" "15.0000"
EditINI [BlurShaderHDRInterior] "fBrightScale" "1.5000"
EditINI [BlurShaderHDRInterior] "fBrightClamp" "1.4000"
EditINI [BlurShaderHDRInterior] "fBlurRadius" "7.0000"
EditINI [BlurShaderHDRInterior] "iNumBlurpasses" "2"

EditINI [BlurShaderHDR] "fTargetLUM" "1.1000"
EditINI [BlurShaderHDR] "fUpperLUMClamp" "0.9000"
EditINI [BlurShaderHDR] "fGrassDimmer" "1.1000"
EditINI [BlurShaderHDR] "fTreeDimmer" "0.9000"
EditINI [BlurShaderHDR] "fEmissiveHDRMult" "5.0000"
EditINI [BlurShaderHDR] "fEyeAdaptSpeed" "15.0000"
EditINI [BlurShaderHDR] "fSunlightDimmer" "1.2500"
EditINI [BlurShaderHDR] "fSIEmmisiveMult" "1.0000"
EditINI [BlurShaderHDR] "fSISpecularMult" "1.2000"
EditINI [BlurShaderHDR] "fSkyBrightness" "0.8000"
EditINI [BlurShaderHDR] "fSunBrightness" "0.5000"
EditINI [BlurShaderHDR] "fBrightScale" "1.5000"
EditINI [BlurShaderHDR] "fBrightClamp" "40.3500"
EditINI [BlurShaderHDR] "fBlurRadius" "6.0000"
EditINI [BlurShaderHDR] "iNumBlurpasses" "2"
EditINI [BlurShaderHDR] "iBlendType" "2"
EditINI [BlurShaderHDR] "bDoHighDynamicRange" "1"
vg Rotfuchs
 
Zuletzt bearbeitet:
Die wichtigsten *.ini Tweaks hast du vergessen Rotfuchs ^^

Ein Semikolon ; markiert eine Kommentarzeile

Code:
; Oblivion darf Shadermodel 3.0 benutzen, sonst nur Shadermodel 2.0 
EditINI "[Display]" "bAllow30Shaders" "1"

; Zoom bei Gesprächen mit Personen anpassen
EditINI "[Interface]" "fDlgFocus" "3.0000"

; Hintergrundmusik nur im Hauptmenü ausschalten
EditINI "[Audio]" "fMainMenuMusicVolume" "0"

... und als wichtigster Tweak von allen: Weg mit den (nervigen) Introvideos
Code:
EditINI "[General]" "SMainMenuMovieIntro" ""
EditINI "[General]" "SIntroSequence" ""
 
Ein Tipp für alle, die sich die Arbeit nur einmal machen wollen:
Sucht euch, die INI-Anpassungen raus, die für euch gut sind und öffnet den Oblivion Mod ...........
vg Rotfuchs

Na endlich, das nenne ich mal eine geniale Lösung. Hab jetzt die Komplettte ini so laufen.

Ist auch Super zum Testen. Habe eigene Inis die nur HDR oder so ändern. Kurz an und abschalten und schon sieht man was los ist. Dazu kommt noch, das man endlich eine Sortierung in der ini haben kann. Echt super Lösung.

Was ich nicht hinbekommen habe ist die Fonts-Änderungsplazierung für ROO, denn hier werden aus irgend einem Grund die "\" Zeichen nicht von OBMM in die Ini kopiert.

Rotfuchs, 3 Werte die du in deiner ini hast verstehe ich nicht. Hast du da zu mehr Infos, warum du die Werte so hoch geregelt hast.
EditINI [General] "uInterior Cell Buffer" "32"
EditINI [General] "uExterior Cell Buffer" "1024"
EditINI [General] "iPreloadSizeLimit" "1538036000"
 
Zuletzt bearbeitet:
Nun hab ich gedacht. Hey Der Pc reicht aus. alles auf High und hoch gepowert bis zum geht nicht mehr- Meine Screens kennt ihr ja inzwischen).
Da zwingt mich folgende geniale und absolut nicht mehr weg zudenkende Mod in die Knie.

Endlich eine Stadt wie man sich das immer wünscht.

Chorrol läuft nun mit oben genannten Effekten nur noch mit 5-8 Frames. Es ist zum Heulen. Dieses Spiel ist immer noch keinem Rechner würdig.

http://planetelderscrolls.gamespy.com/View.php?view=oblivionmods.detail&id=4788

Wenn es das wenigstens getrennt für Innen und Aussen gäbe. Denn innen läuft es trotzt der erhöhten Bevölkerung weiterhin sehr flüssig. Ok dort tummeln sich ja auch keine 50 Npcs wie draußen, sondern nur bis zu 20. Ist schon cool, wenn nun die Gasthäuser belebt sind.

Schade das es das nur für Chorrol und die Kaiserstadt gibt.
 
Zuletzt bearbeitet:
In meiner auch nicht. Bisher nutze ich diesen Befehl deshalb auch nicht. Eventuell wissen ja die User mit mehr Erfahrung darüber etwas.
 
Es existieren so manche Schlüssel in der ungetweakten Oblivion.ini nicht. Hab ich erst gestern wieder festgestellt. Sollte also nicht besorgniserregend sein. Ihr könnt die entsprechenden Einträge ja einfach hinzufügen.
 
Naja aber auf irgendeine technische Grundlage sollten die ja beruhen. Denn wenn erforderlich um mehr Performance zu erzielen, wären sie ja schon vorher enthalten. Dumm ist Bethesda ja nun nicht.
 
Genau, dass ist eine der praktischen Seiten von .INI-Dateien: man kann so viel wie man möchte drannschreiben, die meisten Programme fragen nur die Werte ab, die sie wirklich brauchen. Zudem gibt es noch die üblichen Möglichkeiten, Kommentare hinzuzufügen, meist mit "//".
 
  • Like
Reaktionen: robinH
@RobinH: Solche Schlüssel-Wert-Paare können auch mit Standardvorgaben belegt sein. D.h. dass sie in der Ini nur aufgeführt werden, wenn der Wert geändert werden muss/soll. Teilweise sind auch ganze Gruppen in der Standard-ini leer. Nur weil etwas nicht in der Ini steht, heißt es nicht automatisch, dass es nicht da ist oder so.

EDIT: In der Ini werden Kommentare mit ";" hinzugefügt. Aber bei den meisten Programmiersprachen ist es "//" da hast du schon recht.
 
  • Like
Reaktionen: robinH
Nein die Reihenfolge spielt keine Rolle, nur die Gruppe (das ist das was in eckigen Klammern in einer Ini steht, z.B. [General])

Hab keine Ini da, da ich grade arbeiten bin. Aber googlet doch einfach mal n bisschen... Da findet sich garantiert was. Ich meine aber, dass die Einträge in der Gruppe General stehen, aber ohne Gewähr.
 
  • Like
Reaktionen: BastiX und robinH
Exakt, sonst würde der fehlende Wert durch den darunter folgenden ersetzt werden. Selbst die Gruppe könnte egal sein.
 
Doch, die Gruppe spielt eine Rolle, da die Schlüssel über die Gruppen ausgelesen werden. Jedenfalls ist es in den meisten Fällen so. Das ist ja auch notwendig, damit mehrmals auftretende Schlüsselnamen eindeutig, nämlich über die Gruppe, identifiziert werden können.
 
Ich wollte nur kurz melden, dass die Tipps hier mir mehr Performance gebracht haben! Zwar sind das im Schnitt nicht viel (5-10 FPS) aber bei meinen 4 Jahre alten System sind das rund 40% ^^

Laptop mit Centrino 1,73 GHz, Mobility Radeon x700XL 128MB, 1GB RAM
 
Weiss jemand Rat, warum das was ich da versucht habe nicht funktioniert. Siehe Screen.

Ziel:
Wollte den Wert für Grass im laufenden Spiel anpassen.

Scheine aber den Befehl aus der Englischen Code Zeile nicht richtig umgesetzt zu haben.