Archiv verlassen und diese Seite im Standarddesign anzeigen : aTuner ATi D3D Profiles
BlueSteel
2003-12-25, 16:27:47
Hi und frohe Weihnachten!
Erst mal ein großes Lob an aths, der aTuner ist wirklich ein klasse Tool.
Ich bin zu Weihnachten auf eine ATi umgestiegen (vorher GF4) und hatte schon befürchtet auf den gewohnten Komfort verzichten zu müssen da ich für ATi kein vernünftiges/aktuelles Tool mit Profilen/Presets gefunden hatte.
Der RivaTuner war da mit seinen Per-Game-Verknüpfungen wirklich eine extreme Erleichterung da ich quasi für jedes Spiel andere Settings verwende, allerdings funktioniert dieser ja nur mit NVIDIA-Treibern.
Um so froher war ich als ich festgestellt habe daß der aTuner mittlerweile nicht nur ATi-Karten unterstützt sondern sogar Profile (inc. Verknüpfungen!) anbietet, super Sache!
Ich hätte da nur eine kleine Anfrage an aths:
Ich habe den Fall daß ich in derselben Auflösung spiele wie auch mein Desktop eingestellt ist.
Das führt dann leider dazu daß die D3D-Profile nicht funktionieren da beim Spielstart keinerlei Auflösungswechel stattfindet.
Wenn ich bei UT2k3 zum Beispiel die Spielauflösung anders als die Desktopauflösung wähle habe ich keine Probleme, setze ich allerdings beide gleich habe ich beim Spielstart nach wie vor die Einstellungen die vor dem Laden des Profils aktiv waren; die neuen Settings werden nicht übernommen.
Ich vermute dies wäre relativ einfach zu lösen indem man einfach beim Anlegen eines Profiles auswählen kann ob man beim Laden des Profils die Apply-Funktion ausführen möchte; in diesem Fall würde dann eben zusätzlich zum setzen der Settings noch der Apply ausgeführt bevor ggf. die verknüpfte Anwendung gestartet wird.
Es müßte nur vielleicht in dem Fall eine kleine Pause eingelegt werden bevor die Anwendung gestartet wird damit der Apply genug Zeit hat abgeschlossen zu werden.
Wäre schön wenn dieses Feature in einer der nächsten Versionen integriert werden könnte falls das nicht allzu viel Arbeit macht. Dann wäre das Tools zumindest für meine Zwecke perfekt :D
-BlueSteel
EDIT#2:
-Zusatz entfernt, was hier vorher stand war mein Fehler (mußte mal neustarten schätze ich)-
Jupp, ich denke, das sollte ungefähr so hinzukriegen sein. Diese Tage bin ich nicht an meinem eigenen PC, aber das mit dem Apply für Profile setze ich mal auf die gedankliche aTuner-"to do"-Liste :) Die einfachste Lösung wäre ja, bei jedem Profil, dass auch D3D-Einstellungen setzt (also D3D oder Both-Profile) grundsätzlich kurz die Bildschirm-Einstellungen zu ändern, sofern aTuner eine Radeon findet. Das würde ich dann vermutlich so lösen, dass man das höchstens abschalten kann.
BlueSteel
2003-12-26, 22:06:52
Super Sache, vielen Dank!
Laß Dir ruhig Zeit ;)
Was ich noch fragen wollte:
Woran kann das liegen daß im ATi-Controlpanel (3.10) die Settings die im aTuner vorgenommen werden nicht vollständig angezeigt werden? Wenn exakt dieselben Registry-Settings modifiziert werden sollte die Anzeige doch eigentlich synchron sein, spätestens wenn ich das Controlpanel neu aufrufe.
Oder ist in den 3.10er Treibern einfach irgendein Reg-Key hinzu gekommen der noch nicht vom aTuner modifiziert wird?
Wenn Du möchtest kann ich ja mal versuchen herauszufinden welche Keys das Controlpanel modifiziert bzw. welche dieser Änderungen vom aTuner vielleicht nicht vorgenommen werden.
Im Grunde ist das ja egal da die aTuner-Settings auch das gewünschte Ergebnis liefern aber ich bin nun mal Perfektionist ;)
-BlueSteel
Das CP speichert für sich die Settings noch mal extra :freak:. Es wäre schön, wenn mir jemand flüstern würde, an welcher Stelle und was, so dass aTuner sowohl die tatsächlichen Settings als auch die für das CP gespeicherten Einstellungen ändern könnte. Dass aTuner die CP-Einstellungen modifiziert, ist eigentlich vorgesehen, die "Engine" dafür praktisch vorbereitet, nur ohne die nötigen Infos über die genauen Keys, Entrys und Values kann ich da leider nichts machen.
Wer was weiß, immer nur raus damit. Es würde genügen, das für R3xx komplett zu kriegen.
BlueSteel
2003-12-27, 00:59:22
Ich glaube ich bin da was auf der Spur...
Ich hatte jetzt schon ein paar Mal den Fall daß ich im aTuner am D3D-FSAA verstellen konnte was ich wollte; im Spiel tat sich (trotz Apply) rein gar nichts.
Als ich mir dann mal angesehen habe was in der Registry so passiert sind mir ein paar Dinge aufgefallen.
1. Der Schlüssel "AntiAlias" wird gar nicht verändert, dieser Wert wird aber (zumindest bei Cat 3.10) dafür verwendet um festzulegen ob das FSAA-Level anwendungs- oder treibergesteuert ist.
Wenn FSAA deaktiviert ist muß "AntiAlias" den Wert 1 bekommen um zu signalisieren daß das FSAA-Level jetzt in Händen der Anwendung liegt. Bei allen anderen (forcierten) FSAA-Modi muß "AntiAlias" degegen den Wert 2 haben.
Da aTuner lediglich den Schlüssel "AntiAliasSamples" verändert bekommt man recht unvorhersehbare Resultate sobald "AntiAlias" durch was-auch-immer auf 1, also anwendungsbasiert steht.
Das CP setzt "AntiAlias" genau dann auf 1 wenn das Häkchen bei "Standardeinstellung" aktiviert wird, im gleichen Zug wird natürlich auch das "AntiAliasSamples" auf 0 gesetzt.
Dies trifft nur auf D3D zu, bei OpenGL scheint alles zu passen.
2. Der Schlüssel "AnisoType" wird auch anders behandelt als im CP. Das CP setzt "AnisoType" auf 0 wenn kein AF forciert wird, auf 1 wenn AF mit niedriger Qualität und auf 2 wenn AF mit hoher Qualität gewählt wird. Der aTuner dagegen setzt zwar bei bilinearem AF "AnisoType" auf 1, bei trilinearem AF setzt er es hingegen auf 0.
Hängt das damit zusammen daß man im CP vielleicht überhaupt kein trilineares AF forcen kann oder ist das ein Bug im aTuner? Ich wäre davon ausgegangen daß ATi trilineares AF unter hoher Qualität versteht...
Das trifft im Übrigen sowohl auf das D3D- als auch auf das äquivalente OpenGL-Setting zu.
Was auf jeden Fall fehlt ist daß "AnisoType" auf 0 gesetzt wird sobald AF im aTuner deaktiviert wird, dies sollte aus Konformitätsgründen geschehen. Momentan wird der Wert in diesem Fall überhaupt nicht verändert...
3. Ich glaube ich habe den Ort gefunden an dem die Settings für das CP gespeichert werden. Befindet sich unter HKLM\SOFTWARE\ATI Technologies\Desktop\{***HARDWARE-ID_DER_KARTE***}. Hier finden sich alle nötigen Settings wie "Dir3DAliasSlider", "OGLDAnisoSlider" usw.
Hast Du eine Möglichkeit die korrekten Werte für jede mögliche Einstellung zu bekommen?
Ansonsten würde ich mich dazu bereiterklären diesen Schlüssel mal genauer zu analysieren und Dir sämtliche erforderlichen Daten in einem für Dich angenehmen Format (Reg-Files, Excel-Spreadsheet, Textfile,...) zu liefern.
Schließlich hab ich auch damit angefangen ;)
-BlueSteel
Original geschrieben von BlueSteel
Ich glaube ich bin da was auf der Spur...
Ich hatte jetzt schon ein paar Mal den Fall daß ich im aTuner am D3D-FSAA verstellen konnte was ich wollte; im Spiel tat sich (trotz Apply) rein gar nichts.Bei solchen Fällen bitte prüfen, ob denn wenigstens das CP noch Wirkung zeigt. Ich kenne Fälle, in denen weder aTuner noch das CP funzt, erst nach einem Neustart sind die neuen Einstellungen aktiv. Leider weiß ich nicht, woran sowas liegen könnte.
Original geschrieben von BlueSteel
1. Der Schlüssel "AntiAlias" wird gar nicht verändert, dieser Wert wird aber (zumindest bei Cat 3.10) dafür verwendet um festzulegen ob das FSAA-Level anwendungs- oder treibergesteuert ist.
Wenn FSAA deaktiviert ist muß "AntiAlias" den Wert 1 bekommen um zu signalisieren daß das FSAA-Level jetzt in Händen der Anwendung liegt. Bei allen anderen (forcierten) FSAA-Modi muß "AntiAlias" degegen den Wert 2 haben.
Da aTuner lediglich den Schlüssel "AntiAliasSamples" verändert bekommt man recht unvorhersehbare Resultate sobald "AntiAlias" durch was-auch-immer auf 1, also anwendungsbasiert steht.Habe gerade mal in den Quelltext geschaut — aTuner kennt diese Regel durchaus. Leider schreibt er das nur für R200-basierende Karten :freak: Werde das mal auch auf R300-basierende ausweiten. (Wenn die Tage über eine neue Beta kommt, sage ich in diesem Thread bescheid :))
Original geschrieben von BlueSteel
2. Der Schlüssel "AnisoType" wird auch anders behandelt als im CP. Das CP setzt "AnisoType" auf 0 wenn kein AF forciert wird, auf 1 wenn AF mit niedriger Qualität und auf 2 wenn AF mit hoher Qualität gewählt wird. Der aTuner dagegen setzt zwar bei bilinearem AF "AnisoType" auf 1, bei trilinearem AF setzt er es hingegen auf 0.
Hängt das damit zusammen daß man im CP vielleicht überhaupt kein trilineares AF forcen kann oder ist das ein Bug im aTuner? Ich wäre davon ausgegangen daß ATi trilineares AF unter hoher Qualität versteht...
Das trifft im Übrigen sowohl auf das D3D- als auch auf das äquivalente OpenGL-Setting zu.aTuner weicht beim D3D AF vom CP ab. Um die CP-Einstellungen zu "emulieren", bitte mal im aTuner D3D-Panel (Aufruf mit Ctrl-D) den Haken bei "No trilinear with AF on stages > 0" setzen. Dann müsste (bitte testen!) aTuner D3D AF so wie das CP setzen.
Ich weiß nicht, ob der Cat auch OpenGL AF "optimiert", bzw. ob der neue Cat, per CP bedient, überhaupt noch "optimiert", (also AF auf Texture Stages > 1 nur bilinear erlaubt.)
Original geschrieben von BlueSteel
Was auf jeden Fall fehlt ist daß "AnisoType" auf 0 gesetzt wird sobald AF im aTuner deaktiviert wird, dies sollte aus Konformitätsgründen geschehen. Momentan wird der Wert in diesem Fall überhaupt nicht verändert...Bei D3D AF müsste dieses Entry vom aTuner eigentlich modifiziert werden. Je nach dem speziellen Haken im D3D-Panel entweder auf 0 oder 2 gesetzt.
Original geschrieben von BlueSteel
3. Ich glaube ich habe den Ort gefunden an dem die Settings für das CP gespeichert werden. Befindet sich unter HKLM\SOFTWARE\ATI Technologies\Desktop\{***HARDWARE-ID_DER_KARTE***}. Hier finden sich alle nötigen Settings wie "Dir3DAliasSlider", "OGLDAnisoSlider" usw.
Hast Du eine Möglichkeit die korrekten Werte für jede mögliche Einstellung zu bekommen?
Ansonsten würde ich mich dazu bereiterklären diesen Schlüssel mal genauer zu analysieren und Dir sämtliche erforderlichen Daten in einem für Dich angenehmen Format (Reg-Files, Excel-Spreadsheet, Textfile,...) zu liefern.
Schließlich hab ich auch damit angefangen ;) Der Key für die CP-Settings wird im aTuner bereits zusammengebastelt. Die komischen ID-String der Karte erkennt er per EnumDisplayDevices, schneidet den dann da raus und hängt ihn da an. Da aTuner zum Glück von Anfang an so designt wurde, dass für jedes (intern per Integer identifiziertes) Entry neben dem Datentyp (Binär, Integer, String) auch gleich noch der komplette Key gespeichert wird ("HKLM" wird allerdings implizit vorausgesetzt) könnte ich loslegen, auch die CP-Settings zu schreiben — wenn ich denn nur wüsste, wie die heißen. Reicht als ganz normaler Text. (Slider so-und-so betrifft Entry ABC, das Value hat den Datentyp XYZ, und ist so-und-so kodiert: ...)
Sephiroth
2003-12-27, 15:36:24
Darf ich dir zur Erleichterung deiner Suche mal diese (http://www.sysinternals.com/) Seite mit dem dort kostenlos(bis auf INet-Kosten) erhältlichen Registry monitoring tool "Regmon" empfehlen? Ich mach einfach mal ;D
BlueSteel
2003-12-27, 22:57:03
Den Fall daß man erst neustarten muß bevor man wieder was am FSAA/AF verstellen kann hab ich auch schon kennengelernt, hätte mich beim ersten Mal fast durchdrehen lassen :balla:
Wie man das umgehen kann wüßte ich auch gerne, vielleicht findet sich ja irgendwann mal eine Lösung (oder ATi fixt den Bug ;)).
In diesem Fall lag das aber klar daran daß "AntiAlias" fälschlicherweise auf 1 stand bzw. aTuner den Wert nicht mitgeändert hatte.
Zum 2. Punkt: Das mit dem "No trilinear with AF stages > 0" hatte ich glatt übersehen, wenn das aktiviert wird setzt aTuner das Setting analog zum CP. Der Unterschied ist also (wie Du natürlich weißt ;)) daß das CP bei Quality den Wert auf 2 setzt während der aTuner den Wert 0 verwendet.
Ich hab das unter OpenGL mal getestet (FilterTest.exe), mit 16x AF. Offenbar hat ATi endlich die "Optimierungen" rausgenommen, es waren sämtliche Texturstufen bei den Werten "0" und "2" absolut identisch. Normalerweise hätte ich ja beim Wert "2" ab TextureStage 1 ein bilinear gefiltertes Bild erhalten müssen, dies war nicht der Fall.
Demnach könnte der aTuner um konform zum CP zu sein ab Cat. 3.10 den Wert ruhig auf 2 anstatt 0 setzen da das Ergebnis nun dasselbe ist; kommt natürlich drauf wie einfach das zu implementieren ist. Aber falls zukünftige Catalysts mit dem Wert "0" nicht mehr klarkommen sollten wäre das sicherlich nicht ganz sinnlos...
Unter D3D hab ich allerdings mit Demirug's D3D-AF-Tester nach wie vor den alten Effekt daß ab der 1. Texturstufe nur bilinear gefiltert wird wenn man im CP "Quality" auswählt, hier gibt es also noch die Unterscheidung zwischen "AnisoType" 0 und 2 wobei 2 den schlechteren Wert darstellt. Das Setting "No trilinear with AF stages > 0" ist also auch mit den 3.10ern noch berechtigt und arbeitet korrekt.
Allerdings hat das D3D-CP damit Probleme, tritt der Fall ein daß FSAA aus ist (Häkchen bei "Standardeinstellung") und zusätzlich "AnisoType" auf 0 steht ist der Radiobutton für die Quality deaktiviert, selbst wenn der AF-Slider aktiv ist. Aber da kann man wohl nix dran machen, außer ich finde dazu was in den separaten CP-Settings.
Original geschrieben von aths
Bei D3D AF müsste dieses Entry vom aTuner eigentlich modifiziert werden. Je nach dem speziellen Haken im D3D-Panel entweder auf 0 oder 2 gesetzt.
aTuner setzt den Wert "AnisoType" in der Tat in der Weise die Du beschreibst, allerdings nur solange auch ein AF-Level >1 gewählt wird. Bei "Off" wird der Wert einfach gar nicht modifiziert. Um die Sache konform zu halten sollte in diesem Fall "AnisoType" generell auf "0" gesetzt werden, so handhabt das auch das CP.
Die Liste mit den CP-Settings werde ich Dir liefern, allerdings erst in ein paar Tagen. Heute bin ich zu müde um noch stundenlang in der Registry rumzusuchen und ab morgen bin ich erst mal ein paar Tage nicht an meinem PC. Aber die Sache eilt ja auch nicht...
@Sephirot: Danke für den Tipp, aber den Regmon hab ich gestern schon genutzt um den Key für die CP-Settings zu finden ;)
Das Problem damit ist daß das CP einfach immer sämtliche Einträge neu schreibt und ich im Regmon dann eine Riesenliste mit aktuellen Reads/Writes habe, da geht das vermutlich schneller wenn ich die gute alte RegEdit + F5-Methode verwende...falls Du weißt wie ich im Regmon oder irgendeinem anderen Tool anstatt sämtlichen Writes nur tatsächliche Wertänderungen protokollieren kann immer heraus damit :)
-BlueSteel
Sephiroth
2003-12-27, 23:12:15
Original geschrieben von BlueSteel
@Sephirot: Danke für den Tipp, aber den Regmon hab ich gestern schon genutzt um den Key für die CP-Settings zu finden ;)
Das Problem damit ist daß das CP einfach immer sämtliche Einträge neu schreibt und ich im Regmon dann eine Riesenliste mit aktuellen Reads/Writes habe, da geht das vermutlich schneller wenn ich die gute alte RegEdit + F5-Methode verwende...falls Du weißt wie ich im Regmon oder irgendeinem anderen Tool anstatt sämtlichen Writes nur tatsächliche Wertänderungen protokollieren kann immer heraus damit :)
Unter Options->Filter/Highlight oder einfach STRG+L drücken kannst du dinge filtern ;)
Original geschrieben von BlueSteel
aTuner setzt den Wert "AnisoType" in der Tat in der Weise die Du beschreibst, allerdings nur solange auch ein AF-Level >1 gewählt wird. Bei "Off" wird der Wert einfach gar nicht modifiziert. Um die Sache konform zu halten sollte in diesem Fall "AnisoType" generell auf "0" gesetzt werden, so handhabt das auch das CP.Ok, das kommt auch auf meine gedankliche To-do-Liste. Ich muss auch erst mal etwas abspannen... :) Schön, dass du mal die Settings genauestens mit den 3D-Settings des CP verglichen hast, mangels Radeon kann ich das ja nicht selbst testen.
Tom Servo
2003-12-29, 19:15:58
Original geschrieben von Sephirot
Darf ich dir zur Erleichterung deiner Suche mal diese (http://www.sysinternals.com/) Seite mit dem dort kostenlos(bis auf INet-Kosten) erhältlichen Registry monitoring tool "Regmon" empfehlen? Ich mach einfach mal ;D
3DProf (siehe Sig) hat übrigens einen Menüpunkt um die eingebaute Registry-"Spyware" (Menü Tools | Registry Diff) auch für den Key Software/ATI Tech zu starten. Ist m.E. für diesen speziellen Anwendungszweck deutlich übersichtlicher als RegMon. Man muss 3DProf nicht installieren, sondern kann ihn direkt aus dem entpackten ZIP Ordner starten. Man müsste allerdings .NET installiert haben, weil 3DProf das benötigt.
Sieht dann so aus:
* Time: 00:26:47 Date: 12.11.2003
** Key: "HKEY_LOCAL_MACHINE\Software\ATI Technologies"
** Key: "HKEY_LOCAL_MACHINE\Software\ATI Technologies\Desktop"
** Key: "HKEY_LOCAL_MACHINE\Software\ATI Technologies\Desktop\{DC197A5E-DCED-498D-BF29-77C07A715C3D}"
*** Value: "3DChoice"=dword:00000000 created
* Time: 00:26:49 Date: 12.11.2003
** Key: "HKEY_LOCAL_MACHINE\Software\ATI Technologies"
** Key: "HKEY_LOCAL_MACHINE\Software\ATI Technologies\Desktop"
*** Value: "DeActivateAllWarningMessage" changed from dword:00000000 to dword:00000001.
* Time: 00:26:50 Date: 12.11.2003
** Key: "HKEY_LOCAL_MACHINE\Software\ATI Technologies"
** Key: "HKEY_LOCAL_MACHINE\Software\ATI Technologies\Desktop"
*** Value: "DeActivateAllWarningMessage" changed from dword:00000001 to dword:00000000.
BlueSteel
2004-01-01, 17:58:24
Danke Tom Servo!
Das Feature hat mir eine Menge Arbeit erspart.
Also aths, hier die nötigen Settings; alle Registry-Keys auf die ich mich jetzt beziehe finden sich unter HKLM\Software\ATI Technologies\Desktop\{Hardware-ID}, nur damit keine Mißverständnisse entstehen.
Direct3D-Panel:
- Anti-Aliasing:
- Standardeinstellung (Häkchen):
DWORD Dir3DSmoothPref:
Dir3DSmoothPref = 1 : Häkchen an
Dir3DSmoothPref = 0 : Häkchen aus
- Slider für FSAA-Stärke:
DWORD Dir3DAliasSlider:
Dir3DAliasSlider = 0 : Slider auf 2x
Dir3DAliasSlider = 1 : Slider auf 4x
Dir3DAliasSlider = 2 : Slider auf 6x
- Anisotrope Filterung:
- Standardeinstellung (Häkchen):
DWORD Dir3DAnisoPref:
Dir3DAnisoPref = 1 : Häkchen an,
Dir3DAnisoPref = 0 : Häkchen aus.
- Slider für AF-Stärke:
DWORD Dir3DAnisoSlider:
Dir3DAnisoSlider = 0 : Slider auf 2x
Dir3DAnisoSlider = 1 : Slider auf 4x
Dir3DAnisoSlider = 2 : Slider auf 8x
Dir3DAnisoSlider = 3 : Slider auf 16x
- Radiobutton Leistung / Qualität:
DWORD DirAnisoQuality:
DirAnisoQuality = 0 : Leistung
DirAnisoQuality = 1 : Qualität
Wird FSAA oder AF deaktiviert wird jeweils nur das Häkchen bei Standardeinstellung gesetzt.
Die Slider für Texturqualität, V-Sync und Truform werden vom CP nicht separat gespeichert, die neue Position wird allerdings erst übernommen wenn das CP neu aufgerufen wird (also in Eigenschaften von Anzeige -> Einstellungen auf "Erweitert" geklickt wird).
Die aTuner-Einstellung "V-Sync on" (VSync = 3) existiert im CP nicht, es gibt nur Off (0), Default (1) und On (2).
Allerdings stellt das CP den Wert 3 einfach mit der Sliderposition "V-Sync On" dar, das ist also kein Problem.
OpenGL-Panel:
- Anti-Aliasing:
- Standardeinstellung (Häkchen):
DWORD OGLSmoothPref:
OGLSmoothPref = 1 : Häkchen an
OGLSmoothPref = 0 : Häkchen aus
- Slider für FSAA-Stärke:
Wird vom CP nicht separat gespeichert, die neue Position wird
allerdings erst übernommen wenn das CP neu aufgerufen wird.
- Anisotrope Filterung:
- Standardeinstellung (Häkchen):
DWORD OGLAnisoPref:
OGLAnisoPref = 1 : Häkchen an,
OGLAnisoPref = 0 : Häkchen aus.
- Slider für AF-Stärke:
DWORD Dir3DAnisoSlider:
OGLDAnisoSlider = 0 : Slider auf 2x
OGLDAnisoSlider = 1 : Slider auf 4x
OGLDAnisoSlider = 2 : Slider auf 8x
OGLDAnisoSlider = 3 : Slider auf 16x
- Radiobutton Leistung / Qualität:
DWORD OGLAnisoQuality:
OGLAnisoQuality = 0 : Leistung
OGLAnisoQuality = 1 : Qualität
Die Slider für Texturqualität, V-Sync und Truform werden vom CP nicht separat gespeichert, die neue Position wird allerdings erst übernommen wenn das CP neu aufgerufen wird.
Das problematische Häkchen "Benutzerdefinierte Einstellungen verwenden" welches gesetzt sein muß damit man den
aTuner überhaupt verwenden kann wird übrigens über die DWORDs "Dir3DCustomSettings" und "OGLCustomSettings" gesteuert, diese müssen auf 1 gesetzt sein damit der aTuner Wirkung zeigt. Könnte man ja theoretisch beim Programmstart überprüfen und ggf. auf 1 setzen, dann muß man nach einer Treiberneuinstalltion nicht immer erst ins CP und die Häkchen setzen.
Ich hoffe diese Informationen reichen Dir. Falls Du irgendwann weitere ATi-Features wie diese Smartshader unterstüzten möchtest weißt Du ja wo Du mich findest ;)
-BlueSteel
Original geschrieben von BlueSteel
Das problematische Häkchen "Benutzerdefinierte Einstellungen verwenden" welches gesetzt sein muß damit man den aTuner überhaupt verwenden kann wird übrigens über die DWORDs "Dir3DCustomSettings" und "OGLCustomSettings" gesteuert, diese müssen auf 1 gesetzt sein damit der aTuner Wirkung zeigt. Könnte man ja theoretisch beim Programmstart überprüfen und ggf. auf 1 setzen, dann muß man nach einer Treiberneuinstalltion nicht immer erst ins CP und die Häkchen setzen.Ist das im Regkey für das CP, oder im Key für die 3D-Settings?
BlueSteel
2004-01-02, 11:25:14
Ist im Key fürs CP, so seltsam das auch klingt. Scheint das einzige DWORD dort zu sein das tatsächlich was an den 3D-Settings beeinflusst...
Was mir noch aufgefallen ist; ich lade den aTuner beim Windows-Start mit und der ist jetzt das einzige Tool das kurz auf dem Desktop aufblitzt bevor es sich in den Tray minimiert. Kannst Du da relativ einfach was dran machen (bei "/autostart" das Fenster OffScreen initialisieren oder so) oder wäre das ein zu großer Aufwand?
Mach Dir da bloß keine große Mühe mit, war mir halt nur aufgefallen und wenn sich das durch ein paar Code-Zeilen ändern läßt wäre das auf jeden Fall eine feine Sache. Wirkt auch irgendwie professioneller ;)
-BlueSteel
Bei mir minimiert sich aTuner neuerdings nicht mal :freak: und ich habe keine Ahnung, warum. (Das Tray-Icon wird erstellt und aTuner "denkt", das Hauptfenster sei versteckt, obwohl es noch da ist.)
"Offscreen"-Initialisierung wäre prinzipiell drin, aber steht nicht oben auf meiner Liste :) (aTuner speichert ja die Fenster-Position. Beim Start wird diese dann gesetzt. Für Offscreen müsste er sich außerhalb des Desktops erstellen, und sich später richtig positionieren. Dieses "später" korrekt abzupassen ist bisschen schwierig. Liegt am komplizierten Initialsierungsprozess, wo ich den Überblick verloren habe, wann er wo rausspringt. Die aTuner-Initialisierung ist vermutlich nach Windows das übersichtlichste Stück Source, das je geschrieben wurde.)
Im Moment bin ich völlig ausgelastet (siehe Tech-Forum), werde mal sehen ob ich zur Abwechslung wenigstens den aTuner so erweitern kann, dass er diese CP-Einstellung für User-Settings macht.
Beta 1.7.38 (http://www.3dcenter.de/atuner/files/beta/!aTuner.exe)
Original geschrieben von BlueSteel
1. Der Schlüssel "AntiAlias" wird gar nicht verändert, dieser Wert wird aber (zumindest bei Cat 3.10) dafür verwendet um festzulegen ob das FSAA-Level anwendungs- oder treibergesteuert ist.Ist das gefixt?
Original geschrieben von BlueSteel
Ist im Key fürs CP, so seltsam das auch klingt. Scheint das einzige DWORD dort zu sein das tatsächlich was an den 3D-Settings beeinflusst...Wenn man ein Setting anfasst (AA, AF oder VSync) sollte das jetzt je nach API auf 1 gesetzt werden. Funzt das, wie gedacht?
Also mit der Beta zeigt der mir jetzt als Chip R300 und als Karte dann folglich Radeon 9500/9700 an. Habe aber eine 9800 pro mit Cat 3.10 . Bis dato wurde es immer richtig angezeigt. :???: :)
Tom Servo
2004-01-02, 13:15:06
BlueSteel, bist du dir beim Daten-Typ (DWORD) eigentlich sicher? In meiner Registry steht da nämlich REG_BINARY (hex-Präfix)?
Habe nur einmal Dir3DCustomSettings als DWORD in einer alten Win98SE Registry unter Display Key 000 gefunden. Bei Display 001 stand es dann wieder als Binary Wert.
Weiß jetzt auch nicht was davon richtig sein soll, aber vielleicht könntest du nochmal nachsehen? In meiner WinXP Registry steht auch sonst fast nur REG_BINARY in diesem Key. Habe zwar mal irgendwo von einem der Rage3D Tweak Autoren gelesen, dass würde keinen Unterschied machen, aber so ganz eingleuchet hat mir das nicht. Bin nicht sicher ob das vielleicht ein Missverständnis war. Mein Programm hätte zumindestens ein Problem damit.
[HKEY_LOCAL_MACHINE\SOFTWARE\ATI Technologies\Desktop\{8C11506C-8468-4842-8F2B-E5DC18BE8581}]
"DefaultAntiAlias"=""
"DefaultZBuffer"=""
"OGLCustomSettings"=hex:01,00,00,00
"Dir3DCustomSettings"=hex:01,00,00,00
"HideAllowDesktopPanning"=hex:01,00,00,00
"Rotation"=hex:01,00,00,00
"NewOverlay"=hex:01,00,00,00
"Overlay"=hex:01,00,00,00
"Displays"=hex:01,00,00,00
"DisableDisplaysPageFunction"=hex:00,00,00,00
"OpenGL"=hex:01,00,00,00
"NewOGL"=hex:01,00,00,00
"Workstation"=hex:00,00,00,00
"D3D"=hex:01,00,00,00
"New3D"=hex:01,00,00,00
"Projector"=hex:01,00,00,00
"Maxx"=hex:00,00,00,00
"CRTLimit"=hex:01,00,00,00
"CRTAdjustments"=hex:01,00,00,00
"CRTAdvanced"=hex:01,00,00,00
"TVAttributes"=hex:01,00,00,00
"TVAdjustments"=hex:01,00,00,00
"PowerSaving"=hex:01,00,00,00
"Color"=hex:01,00,00,00
"NewColor"=hex:01,00,00,00
"Options"=hex:01,00,00,00
"TVAdvanced"=hex:01,00,00,00
"TVFormat"=hex:01,00,00,00
"LaptopDFPAdvanced"=hex:01,00,00,00
"GameGamma"=hex:01,00,00,00
"MobilitySupportLargeDesktop"=hex:01,00,00,00
"DisableQuickRes"=hex:00,00,00,00
"QuickResolutionFeatureButton"=hex:01,00,00,00
"DisableOverlayTheaterMode"=hex:00,00,00,00
"SetResolutionToBestView"=hex:01,00,00,00
"ATILogo"=hex:01,00,00,00
"AllowPanningModeButton"=hex:01,00,00,00
"TVSettingMode"=""
"MapTvOutFormatByLocation"=hex:00,00,00,00
"HideDetailsButton"=hex:00,00,00,00
"HideOptionButtons"=hex:00,00,00,00
"GlobalMessages"=hex:01,00,00,00
"HideReduceBlankingButton"=hex:00,00,00,00
"HideDVIOperationModeButton"=hex:00,00,00,00
"HideMouseTracksRotationCheckBox"=hex:00,00,00,00
"Truform"=hex:01,00,00,00
"SmartGart"=hex:01,00,00,00
"UmaFrameBuffer"=hex:01,00,00,00
"EnableDXOverride"=hex:01,00,00,00
"EnablePowerPlayBPPReduction"=hex:01,00,00,00
"VSyncSlider"=hex:01,00,00,00
"DisableScaleImageOnPrimaryController"=hex:00,00,00,00
"HideCrtCompositeSync"=hex:00,00,00,00
"ShowTroubleshoot"=hex:01,00,00,00
"SmartSave"=hex:01,00,00,00
"EnableSubmissionBox"=hex:01,00,00,00
"OverDrive"=hex:01,00,00,00
"3D"=hex:00,00,00,00
"HideWMVButton"=hex:01,00,00,00
@=""
"NoReleaseHDC"=dword:00000000
Hier noch der Win98SE Key
[HKEY_LOCAL_MACHINE\Software\ATI Technologies\Desktop\0000]
"DefaultAntiAlias"="1"
"DefaultZBuffer"="7"
"OGLCustomSettings"=hex:01,00,00,00
"Dir3DCustomSettings"=dword:00000001
"HideAllowDesktopPanning"=hex:01,00,00,00
"Rotation"=hex:01,00,00,00
"NewOverlay"=hex:01,00,00,00
"Overlay"=hex:01,00,00,00
"Displays"=hex:01,00,00,00
"DisableDisplaysPageFunction"=hex:00,00,00,00
"OpenGL"=hex:01,00,00,00
"NewOGL"=hex:01,00,00,00
"Workstation"=hex:00,00,00,00
"D3D"=hex:01,00,00,00
"New3D"=hex:01,00,00,00
"Projector"=hex:01,00,00,00
"Maxx"=hex:00,00,00,00
"CRTLimit"=hex:01,00,00,00
"CRTAdjustments"=hex:01,00,00,00
"CRTAdvanced"=hex:01,00,00,00
"TVAttributes"=hex:01,00,00,00
"TVAdjustments"=hex:01,00,00,00
"PowerSaving"=hex:01,00,00,00
"Color"=hex:01,00,00,00
"NewColor"=hex:01,00,00,00
"Options"=hex:01,00,00,00
"TVAdvanced"=hex:01,00,00,00
"TVFormat"=hex:01,00,00,00
"LaptopDFPAdvanced"=hex:01,00,00,00
"GameGamma"=hex:01,00,00,00
"MobilitySupportLargeDesktop"=hex:01,00,00,00
"DisableQuickRes"=hex:00,00,00,00
"QuickResolutionFeatureButton"=hex:01,00,00,00
"DisableOverlayTheaterMode"=hex:00,00,00,00
"SetResolutionToBestView"=hex:00,00,00,00
"AllowPanningModeButton"=hex:01,00,00,00
"HideMappingButtons"=hex:00,00,00,00
"HideDetailsButton"=hex:00,00,00,00
"HideOptionButtons"=hex:00,00,00,00
"HideReduceBlankingButton"=hex:00,00,00,00
"HideDVIOperationModeButton"=hex:00,00,00,00
"HideMouseTracksRotationCheckBox"=hex:00,00,00,00
"Truform"=hex:01,00,00,00
"SmartGart"=hex:01,00,00,00
"GlobalMessages"=hex:01,00,00,00
"UmaFrameBuffer"=hex:01,00,00,00
"EnablePowerPlayBPPReduction"=hex:01,00,00,00
"VSyncSlider"=hex:01,00,00,00
"DisableScaleImageOnPrimaryController"=hex:00,00,00,00
"HideCrtCompositeSync"=hex:00,00,00,00
"ShowTroubleshoot"=hex:01,00,00,00
"SmartSave"=hex:01,00,00,00
"EnableSubmissionBox"=hex:01,00,00,00
"OverDrive"=hex:01,00,00,00
"3D"=hex:01,00,00,00
@=""
"CopyDesktopKey"=""
"ATILogo"=hex:01,00,00,00
"3DChoice"=dword:00000000
"Dir3DMode"=dword:00000002
"Dir3DAnisoPref"=dword:00000001
"Dir3DSmoothPref"=dword:00000000
"DirAnisoQuality"=dword:00000001
"Dir3DAnisoSlider"=dword:00000000
"Dir3DAliasSlider"=dword:00000000
"OGLMode"=dword:00000002
"OGLAnisoPref"=dword:00000001
"OGLSmoothPref"=dword:00000001
"OGLDAnisoSlider"=dword:00000000
"OGLAliasSlider"=dword:00000001
"OGLAnisoQuality"=dword:00000001
Original geschrieben von kami
Also mit der Beta zeigt der mir jetzt als Chip R300 und als Karte dann folglich Radeon 9500/9700 an. Habe aber eine 9800 pro mit Cat 3.10 . Bis dato wurde es immer richtig angezeigt. :???: :) Ich riesen-Idiot. Stimmt, die Version ist auf 9500/9700 "gelockt". Mom.
edit: Bitte 1.7.39 probieren.
Alles wieder im Lot. :up:
BlueSteel
2004-01-02, 16:06:46
@Tom Servo
Der Datentyp ist bei mir (WinXP, Cat 3.10) DWORD. Sind auch Binarys und REG_SZs mit drin, aber die Werte die ich genannt habe sind bei mir alle DWORD, außer ich hab irgendwas übersehen.
Hier:
[HKEY_LOCAL_MACHINE\SOFTWARE\ATI Technologies\Desktop\
{224FADA0-9D61-4F76-802E-6BD676725C4F}]
"DetectLoad"=hex:00,00,00,00
"DefaultAntiAlias"="1"
"DefaultZBuffer"="7"
"HideAllowDesktopPanning"=hex:01,00,00,00
"Rotation"=hex:00,00,00,00
"NewOverlay"=hex:01,00,00,00
"Overlay"=hex:01,00,00,00
"Displays"=hex:01,00,00,00
"DisableDisplaysPageFunction"=hex:00,00,00,00
"NewOGL"=hex:01,00,00,00
"OpenGL"=hex:01,00,00,00
"Workstation"=hex:00,00,00,00
"D3D"=hex:01,00,00,00
"New3D"=hex:01,00,00,00
"Projector"=hex:00,00,00,00
"Maxx"=hex:00,00,00,00
"CRTLimit"=hex:01,00,00,00
"CRTAdjustments"=hex:01,00,00,00
"CRTAdvanced"=hex:01,00,00,00
"TVAttributes"=hex:01,00,00,00
"TVAdjustments"=hex:01,00,00,00
"PowerSaving"=hex:01,00,00,00
"Color"=hex:01,00,00,00
"NewColor"=hex:01,00,00,00
"Options"=hex:01,00,00,00
"TVAdvanced"=hex:01,00,00,00
"TVFormat"=hex:01,00,00,00
"LaptopDFPAdvanced"=hex:01,00,00,00
"GameGamma"=hex:01,00,00,00
"MobilitySupportLargeDesktop"=hex:01,00,00,00
"DisableQuickRes"=dword:00000000
"QuickResolutionFeatureButton"=hex:01,00,00,00
"DisableOverlayTheaterMode"=hex:00,00,00,00
"SetResolutionToBestView"=hex:00,00,00,00
"ATILogo"=hex:01,00,00,00
"AllowPanningModeButton"=hex:01,00,00,00
"TVSettingMode"="RegionMode"
"MapTvOutFormatByLocation"=hex:00,00,00,00
"HideDetailsButton"=hex:00,00,00,00
"HideOptionButtons"=hex:00,00,00,00
"GlobalMessages"=hex:01,00,00,00
"HideReduceBlankingButton"=hex:00,00,00,00
"HideDVIOperationModeButton"=hex:00,00,00,00
"HideMouseTracksRotationCheckBox"=hex:00,00,00,00
"Truform"=hex:01,00,00,00
"SmartGart"=hex:01,00,00,00
"UmaFrameBuffer"=hex:00,00,00,00
"EnableDXOverride"=hex:01,00,00,00
"EnablePowerPlayBPPReduction"=hex:01,00,00,00
"VSyncSlider"=hex:01,00,00,00
"DisableScaleImageOnPrimaryController"=hex:00,00,00,00
"HideCrtCompositeSync"=hex:00,00,00,00
"ShowTroubleshoot"=hex:01,00,00,00
"SmartSave"=hex:01,00,00,00
"EnableSubmissionBox"=hex:01,00,00,00
"OverDrive"=hex:01,00,00,00
"3D"=hex:01,00,00,00
"HideWMVButton"=hex:01,00,00,00
"3DChoice"=dword:00000000
"Dir3DMode"=dword:00000002
"Dir3DCustomSettings"=dword:00000001
"Dir3DAnisoPref"=dword:00000001
"Dir3DSmoothPref"=dword:00000001
"DirAnisoQuality"=dword:00000000
"Dir3DAnisoSlider"=dword:00000003
"Dir3DAliasSlider"=dword:00000002
"OverlayWarningMessage"=dword:00000000
"OGLMode"=dword:00000002
"OGLCustomSettings"=dword:00000001
"OGLAnisoPref"=dword:00000001
"OGLSmoothPref"=dword:00000001
"OGLDAnisoSlider"=dword:00000003
"OGLAliasSlider"=dword:00000003
"OGLAnisoQuality"=dword:00000001
"NoReleaseHDC"=dword:00000000
@aths:
Der Eintrag AntiAlias wird jetzt immerhin gesetzt, nur leider falsch. Bei Off und 4x passt alles, nur bei 2x und 6x wird der Wert auf "42" anstatt "2" gesetzt.
Das mit dem CustomSettings auf 1 setzen scheint zu funktionieren, wenn ich das in der Registry manuell auf 0 setze macht aTuner da wieder eine 1 draus wenn ich irgendein Setting modifiziere. Allerdings hast Du da einen Backslash zuviel, stört aber nicht weiter.
Ich komme dieses Wochenende vermutlich nicht online, werde also frühestens Sonntagabend wieder hier antworten können. Mach Dir mal keinen Streß mit dem aTuner wenn Du woanders ausgelastet bist ;)
-BlueSteel
Original geschrieben von BlueSteel
@aths:
Der Eintrag AntiAlias wird jetzt immerhin gesetzt, nur leider falsch. Bei Off und 4x passt alles, nur bei 2x und 6x wird der Wert auf "42" anstatt "2" gesetzt.Hm. Hab ich mal gefixt.
Original geschrieben von BlueSteel Allerdings hast Du da einen Backslash zuviel, stört aber nicht weiter.An welcher Stelle ist es zuviel? Setzt aTuner dieses Entry auch, wenn es vorher gar nicht existiert?
Tom Servo
2004-01-03, 07:37:45
Habe mal einen Test gemacht um festzustellen, ob wirklich dieser Control-Panel-Wert den Treiber selber beinflusst oder ob es hier nicht einfach nur am nicht gesetzten "AntiAlias" Wert lag.
Es klingt wirklich unwahrscheinlich, das der Treiber darauf reagiert. Wäre ziemlich unsauber programmiert von ATI.
Man kommt beim Testen auch leicht zu falschen Ergebnissen, weil man nie weiss ob es wirklich die gerade gemachte Änderung war, wodurch sich das Verhalten geändert hat oder es sowieso passiert wäre. Manchmal denkt man auch, es wäre ein Fehler im Programm wenn nix geht, dabei brauchte der ATI Treiber nur mal einen Reboot. Hat mich auch schonmal Stunden gekostet.
Habe es so getestet:
* nVidia Treiber Deinstallation
* Runterfahren, GeForce raus, Radeon rein
* Cata-3.10 Treiber Installation
* Reboot
* ATI und Treiber Registry-Keys exportieren (1)
(Nun hätte man vielleicht einen Tweaker testen sollen. Vielleicht muss man das ATI-CPL unbedingt installieren, damit ein Tweaker funktioniert. Nächstes mal.)
* ATI-CPL Installation
* Reboot
* ATI und Treiber Registry-Keys exportieren (2)
* 3DProf starten
* UT2003 (Direct3D) starten und während des Spiels mit FSAA Einstellungen in 3DProf rumspielen, welche unübersehbar funktionieren (was mit ATuner sicher auch so wäre).
* ATI und Treiber Registry-Keys exportieren (3)
Das komplette Diff zwischen Keys (2) und (3) zeigt nur Änderungen im Treiber-Key und keine im ATI Key, obwohl FSAA funktioniert.
+"AntiAliasSamples"="6"
+"AntiAlias"="2"
+"AnisoDegree"="16"
+"VSync"="1"
+"TextureOpt"="0"
+"TextureLOD"="0"
+"TruformMode"="1"
+"PixelCenter"="0"
+"ExportCompressedTex"="1"
+"SwapEffect"="0"
+"AnisoType"="0"
+[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Video\{1E9C3F34-DEF7-4D50-B982-6F27F5F627DE}\0000\OpenGL]
+"OGLFullSceneAAScale"=dword:00000000
+"OGLMaxAnisotropy"=dword:00000000
+"OGLWaitVerticalSync"=dword:00000000
+"OGLTextureOpt"=dword:00000000
+"OGLLODBias"=dword:00000000
+"OGLTruformMode"=dword:00000001
+"OGLForceZBufferDepth"=dword:00000000
+"OGLSelectedSwapEffect"=dword:00000000
+"OGLEnableTripleBuffering"=dword:00000001
Tom Servo
2004-01-03, 08:40:01
Original geschrieben von BlueSteel
@Tom Servo
Der Datentyp ist bei mir (WinXP, Cat 3.10) DWORD. Sind auch Binarys und REG_SZs mit drin, aber die Werte die ich genannt habe sind bei mir alle DWORD, außer ich hab irgendwas übersehen.
BlueSteel, jetzt mit Cata-10 ist es bei mir nun auch DWORD. Scheint auch so zu sein, dass sich die Datentypen der vom ATI-CPL-Installer gesetzten Werte von denen des Controlpanels unterscheiden können. Mein neuester Registry-Differ kann das nun auch anzeigen:
* Time: 08:25:42 Date: 03.01.2004
** Key: "HKEY_LOCAL_MACHINE\Software\ATI Technologies"
** Key: "HKEY_LOCAL_MACHINE\Software\ATI Technologies\Desktop"
*** Value Changed: "DeActivateAllWarningMessage"=dword:00000000 [Old data was hex:00,00,00,00]
BlueSteel
2004-01-03, 22:01:07
@aths
Das Entry CustomSettings wird korrekt gesetzt; wird auch angelegt falls es vorher nicht existiert.
Der Backslash zuviel ist hier: "...\\Dir3DCustomSettings"; bei allen anderen Pfaden hast Du da nur einen.
Stört aber nicht weiter, geht ja auch so ;)
@Tom Servo
War in der Tat wahrscheinlicher daß CustomSettings lediglich das Häkchen "Benutzerdef. Einstellungen" im CP steuert, ich hatte mich auf irgendeine alte Info gestützt (finde den Thread nicht mehr) nach der dieses Häkchen gesetzt sein mußte damit der aTuner Wirkung zeigt. Ich meine dieses Verhalten auch schon beobachtet zu haben, kann aber gut sein daß ich da grade wieder das Reboot-sonst-geht-gar-nix-Problem hatte...
Aber auch egal, das Setting muß ja ohnehin modifiziert werden um ds CP synchron zu halten, ist also gut daß es drin ist :)
So wie's aussieht sollte aTuner dann ja wohl auch erst ab Cat. 3.10 DWORDs für die CP-Settings verwenden und vorher alles als HEX-Werte speichern, oder? Ich hoffe das ist einfach machbar, aber wenn ich das richtig verstanden habe kommt der 3.10er ja auch noch mit den HEX-Werten klar so daß man notfalls alles damit setzen könnte...
Ich hätte grade noch eine Off-Topic-Frage, ist vermutlich schon zigmal ausdiskutiert worden aber da die Suchfunktion deaktiviert ist und ich ja noch ATi-noob bin werd ich die dreisterweise mal hier stellen :D
Was kann ich machen um MouseLag™ in Spielen loszuwerden? Ich hab jetzt schon öfters das Problem gehabt daß ich z.B. FSAA deaktivieren mußte um lagfrei spielen zu können obwohl ich ~60fps hatte. Bei NVIDIA hab ich in solchen Fällen einfach V-Sync auf aus und das PreRender-Limit auf 0 gesetzt und fertig, aber bei ATi hab ich bisher keine Möglichkeit gesehen das Prerender-Limit zu modifizieren. Wißt ihr da was zu? Sonst poste ich die Frage noch mal im entsprechenden Forum...
-BlueSteel
Original geschrieben von BlueSteel
@aths
Das Entry CustomSettings wird korrekt gesetzt; wird auch angelegt falls es vorher nicht existiert.
Der Backslash zuviel ist hier: "...\\Dir3DCustomSettings"; bei allen anderen Pfaden hast Du da nur einen.
Stört aber nicht weiter, geht ja auch so ;)Versuche ich bei Gelegenheit zu fixen. Während der GF-Support inzwischen ziemlich stabil ist, gibt's bei Radeons immer wieder Dinge, wo aTuner nicht funzt, wie gedacht. Das will ich natürlich beheben, und aTuner sollte dann möglichst wenig Quatsch machen.
Original geschrieben von BlueSteel
So wie's aussieht sollte aTuner dann ja wohl auch erst ab Cat. 3.10 DWORDs für die CP-Settings verwenden und vorher alles als HEX-Werte speichern, oder? Ich hoffe das ist einfach machbar, aber wenn ich das richtig verstanden habe kommt der 3.10er ja auch noch mit den HEX-Werten klar so daß man notfalls alles damit setzen könnte...Im Moment unterscheidet aTuner nicht zwischen Cat-Versionen. aTuner an sich funzt auch mit Cat < 3.10. Ich habe die Datentypen genommen, die mir Exxtreme gesagt hat, dessen rTool auch seit Jahr und Tag (ich glaube, seit Cat 3.0) funzt.
Original geschrieben von BlueSteel
Was kann ich machen um MouseLag™ in Spielen loszuwerden? Ich hab jetzt schon öfters das Problem gehabt daß ich z.B. FSAA deaktivieren mußte um lagfrei spielen zu können obwohl ich ~60fps hatte. Bei NVIDIA hab ich in solchen Fällen einfach V-Sync auf aus und das PreRender-Limit auf 0 gesetzt und fertig, aber bei ATi hab ich bisher keine Möglichkeit gesehen das Prerender-Limit zu modifizieren. Wenn VSync off nicht hilft, weiß ich auch nicht...
BlueSteel
2004-01-07, 00:12:01
aths, ich will nicht extra einen neuen Thread aufmachen aber den hier hast Du ja vermutlich ohnehin abonniert.
Im neuen .40-aTuner scheint ein Bug zu sein, wenn man ein Profil per Verknüpfung startet wird eine neue Instanz des Programms aufgerufen und in den Tray gelegt, diese wird aber nicht automatisch geschlossen!
Stattdessen hat man nach und nach jede Menge aTuner-Symbole im Tray welche beim Anklicken für einen extrem kurzen Moment ein Element in die Taskleiste legen, allerdings kein Hauptfenster öffnen.
Schließen lassen sich diese Instanzen über das nach wie vor funktionierende Tray-Menü.
Vielleicht ein Nebeneffekt von "hideonaltf4"? Das habe ich nämlich aktiviert...
EDIT: Liegt definitv an "hideonaltf4", grade getestet. Mit "closeonaltf4" klappt alles. (Bis auf das D3D-Apply natürlich..)
Hast Du eigentlich zufällig ein Changelog für die .40-Version das Du hier reinkopieren könntest? Wenn ich nicht irre stammen die Änderungen die auf der Download-Seite stehen noch von einer älteren Version...
-BlueSteel
Lediglich die History habe ich mit einer Bemerkung versehen. Den Bug bei Hideonaltf4 gucke ich mir dann als nächstes an. Dann kommt die Sache mit dem D3D Apply, und falls das klappt, die Sache mit den CP-Settings.
Bitte gucken, ob das jetzt richtig ist, und sich die aTuner-Instanz wieder aus dem Tray entfernt.
aTuner 1.7.42 (offizielle Version) müsste jetzt auch bei Profiles (Aunahme bei reinen OpenGL-Profilen) den Bildschirm-Modus neu setzen. Das kann man im Add-Dialog abschalten. (Dass man das im Edit-Dialog nachträglich ändern kann, kommt später.)
Funzt das? (Werden die Settings dann auch wirklich übernommen?)
BlueSteel
2004-01-08, 00:05:14
Funktioniert!
Das Apply wird ausgeführt und im Spiel sind auch die gewünschten Settings aktiv. Die kleine Profil-Instanz beendet sich auch wieder automatisch, trotz "hideonaltf4".
Allerdings könnte die Pause zwischen Apply und dem Aufruf der verknüpften Anwendung ein wenig länger sein; bei mir dauert der Apply-Vorgang ziemlich genau 3 Sekunden. Wenn in dieser Phase schon das Spiel gestartet wird verlangsamt sich alles etwas da sich grade der Desktop neu aufbaut während bereits das Spiel geladen wird. Geht bei mir noch grade so, ich würde aber wetten daß das auf "kleineren" Rechnern mehr Probleme macht.
EDIT: Ach so, und kannst Du da vielleicht eine Abfrage reinmachen daß wenn die Registry-Settings sowieso schon auf den im Profil gespeicherten Werten stehen der Apply nicht ausgeführt wird? Wenn ich ein und dasselbe Spiel mehrfach hintereinander starte brauche ich ja nicht jedes mal einen Apply abzuwarten.
Wie ändere ich eigentlich ein bestehendes Profil? Ist da schon irgendwas implementiert oder muß ich um die FSAA/AF-Settings zu ändern jedes Mal das Profil löschen und neu anlegen? Kommt bei mir öfters vor daß ich für ein Spiel ein Profil erstelle und dann später merke daß ich mit den Settings unter bestimmten Umständen zu große Einbrüche habe und was ändern muß.
Würde ja reichen wenn im Edit-Dialog ein Button hinzukommt der einfach die gespeicherten Settings durch die aktuellen Daten ersetzt; die Information ob D3D, OpenGL oder beides gespeichert werden soll müßte ja ohnehin irgendwo im Profil stehen.
Sind natürlich alles nur Vorschläge, im Grunde funktioniert jetzt ja alles bis auf die CP-Settings. Aber wenn Du mal sonst nix zu tun hast kannst Du Dir ja mal ansehen wie aufwändig das zu implementieren wäre ;)
Ansonsten gute Arbeit, thx! :up:
-BlueSteel
Original geschrieben von BlueSteel
Funktioniert!
Das Apply wird ausgeführt und im Spiel sind auch die gewünschten Settings aktiv. Die kleine Profil-Instanz beendet sich auch wieder automatisch, trotz "hideonaltf4".G00d.
Original geschrieben von BlueSteel
Wie ändere ich eigentlich ein bestehendes Profil? Ist da schon irgendwas implementiert oder muß ich um die FSAA/AF-Settings zu ändern jedes Mal das Profil löschen und neu anlegen? Musst löschen und neu anlegen. Vom jeweils letzten gelöschten Profil in der Sitzung bleibt
Kommt bei mir öfters vor daß ich für ein Spiel ein Profil Name und Pfad zur Anwendung in einer aTuner-internen Zwischenablage. Kann beim nächsten Add mit "Paste" eingefügt werden. Es gibt Profile unterschiedlicher Größen (mit oder ohne Gamma, auf GeForce mit oder ohne Prerender Limit + MIP-Bias.) Das im Edit-Feld änderbar zu machen wäre etwas aufwändiger.
Original geschrieben von BlueSteel
Sind natürlich alles nur Vorschläge, im Grunde funktioniert jetzt ja alles bis auf die CP-Settings.G00d. Die CP-Settings sollen als nächstes kommen. Stückweise allerdings. Erst mal eine API (vermutlich D3D.)
Original geschrieben von BlueSteel
Allerdings könnte die Pause zwischen Apply und dem Aufruf der verknüpften Anwendung ein wenig länger sein; bei mir dauert der Apply-Vorgang ziemlich genau 3 Sekunden. Wenn in dieser Phase schon das Spiel gestartet wird verlangsamt sich alles etwas da sich grade der Desktop neu aufbaut während bereits das Spiel geladen wird. Geht bei mir noch grade so, ich würde aber wetten daß das auf "kleineren" Rechnern mehr Probleme macht.Ok, werde in der nächten Version wohl 2 Sekunden Pause einbauen, sofern dann ein Spiel gestartet wird.
Original geschrieben von BlueSteel
EDIT: Ach so, und kannst Du da vielleicht eine Abfrage reinmachen daß wenn die Registry-Settings sowieso schon auf den im Profil gespeicherten Werten stehen der Apply nicht ausgeführt wird? Das ist nicht ganz so einfach. Hätte auf der anderen Seite natürlich auch seinen Sinn. Muss ich mal gucken, hab eine Idee wie das vielleicht gehen könnte, aber diese Wochen leider nur wenig Zeit.
BlueSteel
2004-01-08, 12:53:29
Original geschrieben von aths
Muss ich mal gucken, hab eine Idee wie das vielleicht gehen könnte, aber diese Wochen leider nur wenig Zeit.
Ich würde mich ja anbieten Dir zu helfen...aber ich schätze Du hast keine Lust die aTuner-Sources preizugeben, oder? :D
Original geschrieben von aths
Es gibt Profile unterschiedlicher Größen (mit oder ohne Gamma, auf GeForce mit oder ohne Prerender Limit + MIP-Bias.) Das im Edit-Feld änderbar zu machen wäre etwas aufwändiger.
Ich hatte an einen Button gedacht der sich einfach anguckt was in dem aktuellen Profil überhaupt gespeichert ist und diese Werte durch die aktuell eingestellten ersetzt.
Müßtest Du vermutlich im Profil ein paar Booleans mitspeichern welche Settings darin gespeichert sind, die Methode hinter dem Button analysiert dann kurz was gespeichert wurde und ruft die passende Add-Methode auf die das Profil durch ein neues, gleichartiges Profil ersetzt.
Ist aber zu viel Arbeit wenn Du sowieso keine Zeit hast, nur so als Anregung für später ;)
Der Workaround mit dem Paste klappt ja auch ganz gut.
Original geschrieben von aths
Ok, werde in der nächten Version wohl 2 Sekunden Pause einbauen, sofern dann ein Spiel gestartet wird.
2s könnten etwas knapp sein, bei mir dauert der Apply ziemlich genau 3s. Kann allerdings gut sein daß für die letzte Sekunde der Monitor verantwortlich ist; wenn Du die Pause drin hast kannst Du ja mal eine beta veröffentlichen, dann kann ich Dir sagen ob das passt.
Ich würde das Häkchen "No Apply for D3D" übrigens defaultmäßig setzten bzw. die Bedeutung umdrehen, das betrifft ja nur den Sonderfall wenn jemand in exakt der gleichen Auflösung/Wiederholrate spielt wie auch der Desktop eingestellt ist. Muß ja nicht jeder die Apply-Pause abwarten wenn er das gar nicht braucht. Sollte sich dann nur vielleicht in Bezeichnung/Tooltip wiederspiegeln wofür das gut ist.
Original geschrieben von aths
Das ist nicht ganz so einfach. Hätte auf der anderen Seite natürlich auch seinen Sinn.
Ich kann natürlich nur spekulieren weil ich die Source nicht kenne, aber fragt aTuner nicht ohnehin beim Programmstart die aktuellen Reg-Settings ab um die Auswahlfelder zu füllen? Das müßte doch auch beim Profilaufruf passieren, dann müßtest Du Dir nur die internen Werte der Auswahlfelder für D3D FSAA/AF/V-Sync merken bevor Du das Profil anwendest und anschließend vergleichen ob sich da was getan hat. Könnte ja eine Methode machen die dem profilmäßigen Apply vorgeschaltet ist und das dann ggf. ausführt; ich schätze aber mal das Problem ist den richtigen Moment zu finden um sich die Werte zu merken.
Versteh mich bitte nicht falsch, ich will Dich nicht nerven. Das ist nur ein Vorschlag der Dir, falls das so funktioniert, etwas Zeit ersparen soll...
-BlueSteel
Im Profil muss nichts mitgespeichert werden (außer natürlich, ob Apply generell deaktiviert sein soll.) Es gäbe zwei Wege, das Problem zu lösen. Entweder liest aTuner erst mal die Position der ComboBoxen aus und vergleicht mit dem, was er setzt, und wenn alles gleich ist, überspringt er das Apply. Oder die D3D-Profil-Set-Routinen testen jeweils selbst, und setzen bei Ungleichheit ein globales Bool welches mit false initialisisiert wurde auf true.
BlueSteel
2004-01-08, 13:51:23
Du könntest auch eine neue globale Methode basteln die sich die Position der D3D-ComboBoxen bei Programmstart bzw. dem letzten Apply merkt und einen boolean auf true setzt wenn die neue Positionen der ComboBoxen von den gemerkten Positionen abweichen. Müßte halt jedes Mal ausgeführt werden wenn man die D3D-ComboBoxen anrührt, oder halt im richtigen Moment wenn ein Profil geladen wird.
Damit könntest Du dann auch den Apply-Button steuern so daß dieser nur aktiv wird wenn sich tatsächlich was geändert hat; würde ja auch bewirken daß der wieder deaktiviert wird wenn man die Änderungen rückgängig macht.
-BlueSteel
Tom Servo
2004-01-08, 14:10:41
@BlueSteel
Das mit dem Paste war eine Notlösung:
http://80.237.203.42/vbulletin/showthread.php?s=&postid=673750#post673750
Angedacht ist das Edit Feature also schon, aber ich denke, bei den Usern fehlte irgendwie auch das Interesse an den Profilen. Hatte jedenfalls den Eindruck, dass die wenigstens für jedes Spiel ein extra Profil anlegen.
BlueSteel
2004-01-08, 14:24:02
Komisch, für mich waren die Profile das wichtigste Feature am RivaTuner als ich noch die GF4 hatte...ich hatte ja schon befürchtet bei der ATi auf den Komfort verzichten zu müssen.
Schon seltsam daß die Profile offenbar nicht mehr genutzt werden...wenn ich mir für teures Geld eine Grafikkarte hole will ich die doch auch voll ausnutzen; das schließt für mich FSAA/AF ein. Nur daß ich auch mit der 9800Pro nicht überall 6x/16x einschalten kann dürfte klar sein, genauso wie bei jedem Spiel andere Settings nötig sind.
Entweder es nutzen noch zu wenige FSAA/AF oder ich bin einfach einer der Wenigen die sich die Zeit nehmen und bei einem Spiel erst mal aufwändig testen welche Settings noch machbar sind um maximale Qualität bei optimal spielbarer Leistung herauszuholen...
Könnte man ja vielleicht auch mal einen Tweak-Guide zu schreiben, ich wette viele verschenken einfach noch Grafikpower die man in weitaus bessere Bildqualität ummünzen könnte...
-BlueSteel
Tom Servo
2004-01-08, 14:59:29
Wenn man nur Profile für Settings hat ohne ein Spiel zu starten braucht man ja auch wirklich nicht viel zu edieren. Ich bin aber eher ein Fan von Profilen die alles automatisch machen (set-and-forget). Deswegen z.B. auch das CDROM-Image-Mounten in 3DProf. Obwohl man das für kaum ein Spiel braucht hat es mich trotzdem oft genug genervt das es nicht automatisch ging.
Original geschrieben von BlueSteel
Du könntest auch eine neue globale Methode basteln die sich die Position der D3D-ComboBoxen bei Programmstart bzw. dem letzten Apply merkt und einen boolean auf true setzt wenn die neue Positionen der ComboBoxen von den gemerkten Positionen abweichen.
So ganz sicher kann man das m.E. nie hinbekommen, weil es noch andere Tweaker gibt. Man müsste um sicher zu sein, davon ausgehen, dass jeder Tweaker seine Registry Änderungen mit einem Blackscreen abschließt, was aber nicht so ist.
Ansonsten passieren manchmal Sachen wie:
* rTool: 2xAA => 4xAA
* rTool: Blackscreen
* rTool: 4xAA => 2xAA
* ATuner: Profil mit 2xAA starten (Ich bin clever. 2xAA ist bereits gesetzt, Blackscreen unötig.)
Statt rTool können einem aber auch als Desktop-Links gespeicherte ATuner Profile in die Quere kommen.
Wenn man später dann ein Feature einbaut was die alten Werte nach Spielende wiederherstellt, ist man übrigens dann auch gezwungen das immer mittels Blackscreen abzuschliessen.
Statt den Booleans habe ich bei 3DProf übrigens einfach je einen Zähler für OGL- und D3D-Änderungen welche hochgezählt werden, wenn Registry-Werte real geändert werden.
Die Blacksreen-Funktion speichert dann den D3D-Zählerstand in einer statischen Variable und wenn der Stand noch unverändert ist, dann wird der Blackscreen-Code nicht ausgeführt.
Original geschrieben von Tom Servo
Wenn man später dann ein Feature einbaut was die alten Werte nach Spielende wiederherstellt, ist man übrigens dann auch gezwungen das immer mittels Blackscreen abzuschliessen.So ein Feature habe ich nicht vor. 3D-Treiber-Einstellungen sind nunmal System-global (und nicht Applikations-spezifisch.) Das sollte man sich dann auch nicht "hin-emulieren", weil man die Nebeneffekte mit anderen Tweakern nicht abschätzen kann. aTuner ist als kooperatives Tool gedacht, und soll immer nur auf unmittelbaren User-Wunsch agieren.
Original geschrieben von BlueSteel
Komisch, für mich waren die Profile das wichtigste Feature am RivaTuner als ich noch die GF4 hatte...ich hatte ja schon befürchtet bei der ATi auf den Komfort verzichten zu müssen.Ich bin froh, die Lösung zum externen speichern von Profilen gefunden und programmiert zu haben. Die alte Methode (Verknüpfung von Hand anlegen) erwies sich als zu kompliziert, sowohl für den User, als auch für aTuner selbst.
Tom Servo
2004-01-08, 15:12:14
Original geschrieben von aths
So ein Feature habe ich nicht vor. 3D-Treiber-Einstellungen sind nunmal System-global (und nicht Applikations-Spezifisch.) Das sollte man sich dann auch nicht "hin-emulieren", weil man die Nebeneffekte mit anderen Tweakern nicht abschätzen kann. aTuner ist als kooperatives Tool gedacht, und soll immer nur auf unmittelbaren User-Wunsch agieren.
Nur leider hat sich das ein User (X - Dragon IIRC, selber Programmierer (edit: falsch erinnert)) unmittelbar von mir gewünscht. Wohl deswegen, weil er nicht alle seine Spiele mit meinem Programm starten wollte. Dann wäre so ein Feature gar nicht nötig. ;)
Man kann dieses Restore ohnehin abschalten (auf mehrere Arten, z.B. auch komplett oder einen Dialog vorher aufmachen). Oder per Spiel, weil einige Spiele lustige Sachen machen, wie BF1942, was sich nach Ende einer Map als Prozess beendet. Dann würde man das Restore machen obwohl nur die Map beendet wurde und nicht das Spiel.
edit: Fürs Zurück-Setzen der Graka-Takte kann man dieses Feature gleich mitbenutzen. Man kann auch ClockGen Dateien ausführen lassen vor und nach dem Spiel. Also im Endeffekt ist das Restore dann doch ein sinnvolles Feature.
edit2: Du könntest nach Spiel-Ende (oder besser sogar vor dem Spiel-Start, wegen der ganzen Launcher) einen Dialog aufpoppen lassen: "Sollen die Werte jetzt wiederhergestellt werden Ja/Nein." Das liesse dem User die volle Kontrolle.
x-dragon
2004-01-08, 15:46:13
Also das die Treiber-Settings zurückgestellt werden war meine Idee? :kratz2: Zumindest das die Idee einige Nachteile* hat hab ich zumindest schon gemerkt, aber für neue Spiele (bzw. Demos) war es an sich ganz praktisch. An sich kann ich also auch gut darauf verzichten :heilig:.
* höhere Belastung des Monitors durch "ständiges" hin- und herschalten, das beenden des Spiels kann oft nicht korrekt erkannt werden (da muss man dann immer die Meldung wegklicken)
Tom Servo
2004-01-08, 16:35:44
Ooops. Warst gar nicht nicht du. Omnicron wars.
Wollte auch nur sagen, dass so ein Feature ja nicht den User bevormunden soll, sondern es von vielen Usern so gewünscht wird. Und abschaltbar ist es auch für alle anderen.
Es müsste halt eine definierte API für Tweaker und Game-Launcher geben.
Aths, Das Clocking der Karte ist übrigens wirklich 100%ig global, aber ich finde das Rückstellen durch den Tweaker ein nützliches Feature in der Praxis. Und ein Profil spiegelt zwar nicht den unmittelbaren Willen des Users, aber da es von ihm erstellt (programmier) und gestartet wird auf jeden Fall seinen Willen. Natürlich nur, wenn er die Arbeitsweise des Programms verstanden hat.
Ich werde einfach mal versuchen, das Restore für 3D Settings optional zu machen, so dass man auch alleine den Takt rücksetzen kann. Wird aber wieder die GUI komplizieren, wo ich sie gerade erst renoviert habe. Alles nicht so einfach.
edit: Jetzt schreibe ich schon "@aths". Sorry, bin heute zu früh aufgestanden wegen den Handwerkern. Werde mal besser Schluss für heute machen.
Original geschrieben von Tom Servo
Nur leider hat sich das ein User (X - Dragon IIRC, selber Programmierer (edit: falsch erinnert)) unmittelbar von mir gewünscht. Wohl deswegen, weil er nicht alle seine Spiele mit meinem Programm starten wollte. Dann wäre so ein Feature gar nicht nötig. ;)Ich gehe nur dann auf User-Wünsche ein, wenn sie in mein Design passen :)
Original geschrieben von Tom Servo
edit2: Du könntest nach Spiel-Ende (oder besser sogar vor dem Spiel-Start, wegen der ganzen Launcher) einen Dialog aufpoppen lassen: "Sollen die Werte jetzt wiederhergestellt werden Ja/Nein." Das liesse dem User die volle Kontrolle. aTuner ist darauf optimiert, mit möglichst wenig Mausklicks auszukommen. So ein Dialogfeld würde mich tierisch abnerven.
Tom Servo
2004-01-08, 18:25:12
Original geschrieben von aths
aTuner ist darauf optimiert, mit möglichst wenig Mausklicks auszukommen. So ein Dialogfeld würde mich tierisch abnerven.
Du könntest es auch über Tastatur steuern.
Mich würde das aber auch nerven, deswegen kann man bei mir das alles vorher eistellen:
Global:
http://home.tiscalinet.de/bertw/proj/tdprof/img/de/tdprof_shot_settings_restore.png
Pro Spiel:
Original geschrieben von Tom Servo
Du könntest es auch über Tastatur steuern.Toll. Ich kann's auch gleich weglassen.
Original geschrieben von Tom Servo
Mich würde das aber auch nerven, deswegen kann man bei mir das alles vorher eistellen:Toll.
aTuner hat eine andere Philosophie, wie du merkst.
Tom Servo
2004-01-08, 18:49:37
Ja und? Und mein Programm hat eine andere. Deswegen ist sie nicht schlechter als deine (Emulieren etc.).
Es ist schön, dass man bei 3dprof alles einstellen kann, aTuner richtet sich ausdrücklich nicht an Konfigurations-Profis. Für einiges gibt es inoffizielle Kommandozeilen-Parameter, aber ich füge nur Dinge hinzu, die mir wirklich sinnvoll erscheinen. Sonst könnte man das Ding bald als Betriebssystem handeln... man soll aTuner anwenden, und sich nicht reinarbeiten bzw. erst zurecht konfigurieren müssen. Da entscheide ich, was für den User gut sich :) Wenn dieser das nicht so mag, kann er eins der anderen Tools nehmen. BlueSteel hat mich auf einige Designschwächen aufmerksam gemacht (die ich im Gebrauch nicht mitkriege, da ich das Ding ja nie mit Radeon verwende) und das wird jetzt schrittweise gefixt bzw. verbessert. Automatisches oder halbautomatisches Zurücksetzen von Settings ist nicht geplant. Ich verändere manchmal während des Spiels noch die 3D-Einstellungen, und es würde mich nerven, wenn er da was zurück setzt. Zumal ich bei neuen Spielen eh die passenden Einstellungen neu setzen lasse.
BlueSteel
2004-01-08, 22:06:25
Kommt ja auch immer drauf an wofür man ein Tool verwenden will.
Ich lasse normal immer ein Tweak-Tool (früher RivaTuner) im Tray mitlaufen so daß ich relativ schnell die wichtigsten Settings umstellen kann, da ist die schlanke Oberfläche des aTuner ideal für.
Falls ich mal erweiterte Settings wie DXT-Textures modifizieren will muß ich dann zwar auf ein weiteres Tool wie 3DProf zurückgreifen, aber solche Settings verwende ich höchstens alle paar Wochen mal um irgendeine Eigenartigkeit zu testen.
Die Profile brauche ich natürlich schon, aber so wie die momentan im aTuner vorhanden sind reicht mir das vollkommen. Wenn ich sowieso jedes Spiel mit Profil starte (oder, wenn ich keins hab vorher kurz in den aTuner gehe) hab ich da auch kein Problem mit daß die Profil-Settings nicht zurückgesetzt werden.
Kurz und gut - für meine Zwecke finde ich die aTuner-Philosohpie passender, mir ist der 3DProf für den täglichen Gebrauch zu überladen. Das soll jetzt keine negative Kritik sein, ich wollte nur mal klarstellen wie ich als User zu diesem Thema stehe.
Hängt vielleicht auch davon ab ob man ATi- oder NVIDIA-User ist, bei der GF4 hab ich auch mehr Settings modifiziert (Prerender, MipMap-LOD etc.) als das bei der ATi überhaupt möglich/sinnvoll ist, hier brauche ich außer FSAA/AF/V-Sync eigentlich nichts groß zu verstellen.
-BlueSteel
x-dragon
2004-01-09, 08:23:08
Original geschrieben von BlueSteel
...
Entweder es nutzen noch zu wenige FSAA/AF oder ich bin einfach einer der Wenigen die sich die Zeit nehmen und bei einem Spiel erst mal aufwändig testen welche Settings noch machbar sind um maximale Qualität bei optimal spielbarer Leistung herauszuholen...
Könnte man ja vielleicht auch mal einen Tweak-Guide zu schreiben, ich wette viele verschenken einfach noch Grafikpower die man in weitaus bessere Bildqualität ummünzen könnte...
-BlueSteel Zumindest eine kleine Statistik was das angeht hab ich in meiner Sig :D.
Original geschrieben von aths
... Ich verändere manchmal während des Spiels noch die 3D-Einstellungen, ... Interessant, funktioniert das grundsätzlich bei jedem Spiel? Bisher war ich davon ausgegangen das man AA/AF vor dem Start des Spiels einsgestellt haben muss, aber das würde ja das herausfinden der optimalen Einstellung wesentlich erleichern.
Original geschrieben von x-dragon
Interessant, funktioniert das grundsätzlich bei jedem Spiel? Bisher war ich davon ausgegangen das man AA/AF vor dem Start des Spiels einsgestellt haben muss, aber das würde ja das herausfinden der optimalen Einstellung wesentlich erleichern. Zumindest in D3D-Vollbild-Anwendungen geht das.
Tom Servo
2004-01-09, 23:07:15
Original geschrieben von x-dragon Bisher war ich davon ausgegangen das man AA/AF vor dem Start des Spiels einsgestellt haben muss, aber das würde ja das herausfinden der optimalen Einstellung wesentlich erleichern.
War m.W. auch bei der Radeon lange Zeit so. Es hat immer nur bei OpenGL funktioniert und ziemlich genervt. Hatte in einem Treiberthread mal gefragt, seit wann das wieder geht, aber es konnte mir niemand sagen.
Hatte natürlich gehofft, der Blackscreen wäre nun auch endlich wieder überflüssig, aber leider nicht. Angeblich betrachtet ATI den Blackscreen auch als Feature und nicht als Bug. ;(
Tom Servo
2004-01-10, 16:37:57
Original geschrieben von BlueSteel
Falls ich mal erweiterte Settings wie DXT-Textures modifizieren will muß ich dann zwar auf ein weiteres Tool wie 3DProf zurückgreifen
Dafür würde ich dann eher rTool empfehlen. Vorteil von 3Dprof wäre nur die Erweiterbarkeit durch den User auf neue Registry-Optionen, wie z.B. SmartShader.
ATuner soll(te) m.E. eine leichtgewichtige Ergänzung zu RivaTuner sein.
Bei 3DProf dreht sich aber eigentlich alles nur um Profile. Man kann auch mittels Profilen einzelne Optionen komfortabel ändern. Ich habe hier z.B. "Clock Slow", "Clock Fast", "3D FSAA Off". Profile. Die startet ich dann über System-Hotkeys (auch direkt im Spiel), Desktop-Verknüpfungen oder Tray-Menü. Im Normalfall ist aber alles schon im Spiele-Profil so eingestellt wie ich es haben will.
btw: Ich habe nie vorgschlagen, ein Feature wie Wiederherstellen in ATuner zu integrieren. Das wäre höchstens dann halbwegs vernünftig einzubauen, wenn man eine Prozesserkennung hätte wie R3D-Tweak, Radkliner, etc. Damit kann man dann als Nebeneffekt auch sehr leicht das Spiel-Ende wirklich zuverlässig erkennen. Man kann dann natürlich immer noch das Feature ablehnen. Obwohl es m.E. alleine der Kooperation dient (auf einem Game-PC zumindestens) und andernfalls komplett zwecklos wäre für ein Profile-Programm.
Original geschrieben von Tom Servo
Damit kann man dann als Nebeneffekt auch sehr leicht das Spiel-Ende wirklich zuverlässig erkennen.Ich will das Spiel-Ende gar nicht erkennen :eyes: Falls aTuner am Takt spielen würde, wäre das Feature zu überlegen. Allerdings haben die FX-Karten, "die es brauchen", ohnehin getrennte 2D/3D-Taktsettings. OC sehe ich außerhalb des aTuner-Aufgabenbereiches. Ich kenne kein Tool, was besser OCt als RivaTuner.
Original geschrieben von Tom Servo
Man kann dann natürlich immer noch das Feature ablehnen. Obwohl es m.E. alleine der Kooperation dient (auf einem Game-PC zumindestens) und andernfalls komplett zwecklos wäre für ein Profile-Programm. Imo dient es eher der Konfusion. Es kann ein systemimmanentes Architektur-Problem nicht wirklich beseitigen. Es erhöht den Konfigurationsaufwand für den User. Vor allem bringt es keine Vorteile. Mit aTuner soll man vor dem Spiel die Settings einstellen, und ggf. mit dem Launcher das Spiel dann auch starten. Welche Settings am Ende des Spieles aktiv sind, ist belangslos, da vor dem Start des nächsten Spiels die Settings ohnehin neu gesetzt werden.
Version 1.7.45 beta (die Beta-URL: hier (http://www.3dcenter.de/atuner/files/beta/!aTuner.exe) )
Original geschrieben von BlueSteel
EDIT: Ach so, und kannst Du da vielleicht eine Abfrage reinmachen daß wenn die Registry-Settings sowieso schon auf den im Profil gespeicherten Werten stehen der Apply nicht ausgeführt wird? Wenn ich ein und dasselbe Spiel mehrfach hintereinander starte brauche ich ja nicht jedes mal einen Apply abzuwarten.Das neue Soll-Verhalten:
- Wenn beim Profil-Speichern abgeschaltet, macht er nie Apply.
- Wenn nicht abgeschaltet, macht er nur Apply, wenn folgende Bedingungen erfüllt sind:
- Es handelt sich um ein Direct3D oder Both-Profil.
- In der Tat wurden D3D-Einstellungen geändert.
- Der Apply-Button war disabled. Sofern der enabled war, wird zur Sicherheit noch mal Apply gemacht, weil man ja nicht wissen kann, ob die angezeigten Settings überhaupt schon übernommen wurden.
Original geschrieben von BlueSteel
Allerdings könnte die Pause zwischen Apply und dem Aufruf der verknüpften Anwendung ein wenig länger sein; bei mir dauert der Apply-Vorgang ziemlich genau 3 Sekunden. Wenn in dieser Phase schon das Spiel gestartet wird verlangsamt sich alles etwas da sich grade der Desktop neu aufbaut während bereits das Spiel geladen wird. Geht bei mir noch grade so, ich würde aber wetten daß das auf "kleineren" Rechnern mehr Probleme macht.Sofern eine Anwendung gestartet wird, und Apply gemacht wird, blendet er vorher ein Fenster mit Fortschrittsbalken an. In dieser Zeit steht aTuner einfach nur blöd da und verbraucht einige CPU-Zyklen :) Das Fenster beendet sich automatisch.
Bitte mal gründlich austesten, ob das Sollverhalten auch in der Praxis reproduzierbar ist.
Die nächsten geplanten Erweiterungen sind:
- Das Apply-Setting kann im Edit-Dialog geändert werden.
- Ein Mausklick auf das Warte-Fenster schließt es ebenfalls.
Falls das dann auch noch funzt, sind endlich die CP-Settings dran. Aber ich mach das lieber alles Schritt für Schritt.
BlueSteel
2004-01-12, 12:49:09
Original geschrieben von aths
Das neue Soll-Verhalten:
- Wenn beim Profil-Speichern abgeschaltet, macht er nie Apply.
- Wenn nicht abgeschaltet, macht er nur Apply, wenn folgende Bedingungen erfüllt sind:
- Es handelt sich um ein Direct3D oder Both-Profil.
- In der Tat wurden D3D-Einstellungen geändert.
- Der Apply-Button war disabled. Sofern der enabled war, wird zur Sicherheit noch mal Apply gemacht, weil man ja nicht wissen kann, ob die angezeigten Settings überhaupt schon übernommen wurden.
Das Ganze funktioniert, allerdings nur bei Profilen die aus dem aTuner heraus aufgerufen werden. Sobald man eine Verknüpfung oder ein gespeichertes File verwendet wird leider immer ein Apply durchgeführt.
War das so gedacht? Ich vermute das liegt daran daß beim Start von "externen" Profilen eine neue aTuner-Instanz aufgerufen wird. Vielleicht kannst Du ja den Profilaufruf von so einer zusätzlich gestarteten Instanz an den Haupt-aTuner weiterleiten sofern einer existiert?
Ich starte Profile eigentlich grundsätzlich über Verknüpfungen, deshalb halte ich das schon für relativ wichtig daß das Feature nicht nur innerhalb der aTuner-Profilliste funktioniert.
Original geschrieben von aths
Sofern eine Anwendung gestartet wird, und Apply gemacht wird, blendet er vorher ein Fenster mit Fortschrittsbalken an. In dieser Zeit steht aTuner einfach nur blöd da und verbraucht einige CPU-Zyklen :) Das Fenster beendet sich automatisch.
Funktioniert. Allerdings dauert das bei mir jetzt doch etwas zu lang, der Balken ist noch gut sichtbar bevor das Spiel gestartet wird. Der Apply-Vorgang dauert ziemlich genau 3s (2,8s würde ich schätzen), der Fortschrittsbalken verschwindet allerdings erst exakt 4s nachdem ein Profil gestartet wurde.
-BlueSteel
Original geschrieben von BlueSteel
Das Ganze funktioniert, allerdings nur bei Profilen die aus dem aTuner heraus aufgerufen werden. Sobald man eine Verknüpfung oder ein gespeichertes File verwendet wird leider immer ein Apply durchgeführt.
War das so gedacht? Nee. Und das wird hässlich zu debuggen...
Original geschrieben von BlueSteel
Ich vermute das liegt daran daß beim Start von "externen" Profilen eine neue aTuner-Instanz aufgerufen wird. Vielleicht kannst Du ja den Profilaufruf von so einer zusätzlich gestarteten Instanz an den Haupt-aTuner weiterleiten sofern einer existiert?Hrn. Das ist weniger wichtig, welche Instanz da was macht. Der "zweite" aTuner kriegt den Profil-String und wertet den aus. Das ist dieselbe Funktion, quasi der gleiche "Codepath". Vermutlich wird beim "Schnellstart" nicht ausgelesen, welche Settings im Moment gesetzt sind. Das werde ich aber wahrscheinlich nicht umsonst abgeschaltet haben. Muss mal gucken...
edit: 1.7.47 beta. Habe lasse beim Profilsetzen mit Absicht noch mal vorher die Registry auslesen.
BlueSteel
2004-01-13, 00:02:24
Passt! Jetzt wird auch bei extern aufgerufenen Profilen das Apply umgangen falls das nicht notwendig ist.
Ich werd noch ein paar Tests machen ob da irgendeine Schwachstelle drin ist wo der Apply fälschlicherweise weggelassen wird. Wenn Du sogar die Registry noch mal ausliest sollte das aber fast unmöglich sein...
Was hältst Du von einem Console-Command mit dem man die Länge der Apply-Pause definieren kann? Ich wette das hängt u.A. vom verwendeten Monitor ab wie schnell man wieder den Desktop vor sich hat, demzufolge ist eine perfekte Voreinstellung nur schwer zu erreichen.
Bei mir ist die Pause auf jeden Fall nach wie vor ziemlich genau 1s zu lang.
-BlueSteel
Bitte mit 1.7.48 Beta weitertesten. Habe die Art der Pause geändert (statt Sleep jetzt via Timer)
So oder so, bei meinen Tests wartet Windows oft damit, die Desktop Icons zu refreshen, bis sich aTuner ausgepaust hat. Komisch.
Eine Konfigurationsmöglichkeit der Pausenlänge kommt u. U. noch — später :)
BlueSteel
2004-01-13, 22:07:53
Naja, anders ist es jetzt schon...
Das Apply funktioniert bei mir nach wie vor problemlos, der Icon-Refresh kommt auch <0,5s nachdem ich wieder was sehe. Allerdings macht der aTuner jetzt nach dem Blackscreen sogar 2s Pause (mit Balken) bevor das Spiel gestartet wird...
Der Balken hat bei mir in dem Moment wo der Icon-Refresh stattfindet grade das erste Drittel passiert...
-BlueSteel
Was sind jetzt noch mal die Dinge, die verbessert / hinzugefügt werden müssten?
BlueSteel
2004-01-13, 23:40:53
Äh..wie jetzt?
Das hier meinst Du ja garantiert nicht, oder? Hast Du ja selber geschrieben ;)
Original geschrieben von aths
Die nächsten geplanten Erweiterungen sind:
- Das Apply-Setting kann im Edit-Dialog geändert werden.
- Ein Mausklick auf das Warte-Fenster schließt es ebenfalls.
Falls das dann auch noch funzt, sind endlich die CP-Settings dran. Aber ich mach das lieber alles Schritt für Schritt.
Im Bezug auf meine letzte Antwort wäre die sinnvollste Lösung vermutlich wirklich die Länge der Apply-Pause bestimmen zu können, ein Konsolenbefehl würde da ja völlig ausreichen.
Bis auf die (bei mir) zu lange Pause klappt der Apply jetzt aber so wie er soll...
-BlueSteel
Original geschrieben von BlueSteel
Im Bezug auf meine letzte Antwort wäre die sinnvollste Lösung vermutlich wirklich die Länge der Apply-Pause bestimmen zu können, ein Konsolenbefehl würde da ja völlig ausreichen.Kommt später. In der nächsten Version werde ich die Standard-Wartezeit verkürzen.
Original geschrieben von BlueSteel
Äh..wie jetzt?
Das hier meinst Du ja garantiert nicht, oder? Hast Du ja selber geschrieben ;)Das meinte ich nicht, weil das bereits drin ist, seit 1.7.47 glaub ich. Sollten hiernach schon gleich die CP-Settings kommen?? (Habe etwas den Überblick verloren...)
BlueSteel
2004-01-14, 00:19:16
Original geschrieben von aths
Sollten hiernach schon gleich die CP-Settings kommen?? (Habe etwas den Überblick verloren...)
Ich glaube schon; kommt mir zwar auch etwas komisch vor aber ich wüßte grade wirklich nicht was sonst noch fehlen würde...wenn mir was einfällt melde ich mich.
-BlueSteel
1.7.50 beta:
Wird das CP D3D AA-Setting richtig gesetzt?
BlueSteel
2004-01-19, 11:53:06
Passt! D3D-FSAA wird korrekt gesetzt, der Slider wird auch deeaktiviert wenn FSAA deaktiviert wird.
Allerdings ist da wieder ein Backslash zuviel ;)
HKLM\SOFTWARE\ATI Technologies\Desktop\{HW-String}\\Dir3DAliasSlider=0x00000002
Funktioniert auch insofern daß die CP-Settings nur dann aktualisiert werden wenn der betreffende Eintrag sich ändert. Die normalen FSAA-Settings dagegen werden immer gesetzt, auch wenn der Reg-Eintrag längst darauf steht. (also wenn man 2x ein bestimmtes Setting wählt) Das betrifft alle D3D-Settings. Stört nicht weiter, ich erwähne das nur da bei OpenGL solche Änderungen ignoriert werden.
-BlueSteel
Original geschrieben von BlueSteel
Passt! D3D-FSAA wird korrekt gesetzt, der Slider wird auch deeaktiviert wenn FSAA deaktiviert wird.
Allerdings ist da wieder ein Backslash zuviel ;)
HKLM\SOFTWARE\ATI Technologies\Desktop\{HW-String}\\Dir3DAliasSlider=0x00000002Ist das eigentlich grundsätzlich der Fall? Ich nehme in der nächsten Version einfach mal ein Backslash weg.
Original geschrieben von BlueSteel
Das betrifft alle D3D-Settings. Stört nicht weiter, ich erwähne das nur da bei OpenGL solche Änderungen ignoriert werden.Hm. Eigentlich ist es so, dass er vor dem Schreiben prüft, ob das Setting nicht schon gesetzt ist. (Es gibt auch aTuner-intern den Befehl zum "Durchschreiben", egal, was da schon steht.) Ob da was 2x gesetzt wird oder nicht, ist also eher eine Kosmetik-Frage. Der Sache nehme ich mich an, wenn alle CP-Settings funzen. Da D3D AA ja nun klappt, versuche ich im nächsten Rutsch den Rest zu integrieren.
BlueSteel
2004-01-19, 12:34:08
Original geschrieben von aths
Ist das eigentlich grundsätzlich der Fall?
Nicht grundsätzlich, nur bei dem einen Setting das ich kopiert habe. Aber das ist ja auch das einzige Neue...
-BlueSteel
Hm, prüf doch mal bitte, ob OpenGL Triple Buffering (im OpenGL Extra-Panel) funktioniert. Zur Not mit rTool gegentesten.
In der neuen Beta-Version ist erst mal nur das CP D3D AF-Setting zusätzlich drin, bitte gucken, ob das hinhaut, und ob aTuner auch "Quality" und "Performance" richtig im CP setzt.
Bitte prüfen, ob der Key zum CP jetzt korrekt ist (wegen dem Doppel-Backslash.)
mapel110
2004-01-20, 05:48:38
funzt bei mir. sowohl beim aktivieren als auch beim deaktivieren. =)
CP übernimmt was atuner da eingestellt hat.
1.7.52 beta: CP-Settings für OpenGL sind drin.
- Funzen die auch?
- Funzt OpenGL Enable Triple Buffering?
BlueSteel
2004-01-20, 16:39:04
Da fehlen noch ein paar Kleinigkeiten.
OpenGL-FSAA:
Der Eintrag OGLSmoothPref (für FSAA-Slider an/aus) muß im CP-Key gesetzt werden, nicht im Treiber-Key, dann sollte das theoretisch für bi- und trilinear gehen.
OpenGL-AF:
Hier muß im CP-Key noch das Setting OGLAnisoPref verändert werden. "0" wenn AF deaktiviert sein soll, ansonsten "1".
OpenGL-VSync:
Funktioniert (hat ja schon immer funktioniert ;))
D3D-FSAA:
Perfekt.
D3D-AF:
Bilinear:
Die Sliderposition wird gesetzt, allerdings wird bei "Off" das Feld nicht deaktiviert. (AnisoType = "0" wird nicht gesetzt) Der Radiobutton steht korrekt auf "Leistung".
Trilinear:
Die Sliderposition wird gesetzt, die Quality-Radiobuttons sind aber ausgegraut und in der Übersichtstabelle (bevor man per Button "Benutzerdefiniert" in den Screen mit den Slidern wechselt) steht immer "Standard" anstatt des Aniso-Wertes. Da der Radiobutton aber direkt am Treiber-Key hängt kann man da wohl nix machen...das CP erwartet "0" oder "1", Du verwendest für trilinear aber den Wert "2"...
D3D-VSync:
Passt.
Ich hoffe das hilft Dir erst mal weiter!
-BlueSteel
Original geschrieben von BlueSteel
Da fehlen noch ein paar Kleinigkeiten.
OpenGL-FSAA:
Der Eintrag OGLSmoothPref (für FSAA-Slider an/aus) muß im CP-Key gesetzt werden, nicht im Treiber-Key, dann sollte das theoretisch für bi- und trilinear gehen.Komisch, eigentlich wird für diesen Eintrag der Key zum CP gesetzt.
Original geschrieben von BlueSteel
OpenGL-AF:
Hier muß im CP-Key noch das Setting OGLAnisoPref verändert werden. "0" wenn AF deaktiviert sein soll, ansonsten "1".Auch komisch, eigentlich ist das implementiert.
Original geschrieben von BlueSteel
D3D-AF:
Bilinear:
Die Sliderposition wird gesetzt, allerdings wird bei "Off" das Feld nicht deaktiviert. (AnisoType = "0" wird nicht gesetzt) Das fehlte, bitte neue Version testen.
Original geschrieben von BlueSteel
Trilinear:
Die Sliderposition wird gesetzt, die Quality-Radiobuttons sind aber ausgegraut und in der Übersichtstabelle (bevor man per Button "Benutzerdefiniert" in den Screen mit den Slidern wechselt) steht immer "Standard" anstatt des Aniso-Wertes. Da der Radiobutton aber direkt am Treiber-Key hängt kann man da wohl nix machen...das CP erwartet "0" oder "1", Du verwendest für trilinear aber den Wert "2"...Wenn du im D3D-Extra-Panel "No AF on Stages > 0" aktivierst, wird dann das CP richtig gesetzt?
BlueSteel
2004-01-27, 22:36:05
Kann sein daß ich mich irgendwo vertan hab, bei OGL wird ja im Gegensatz zu D3D nur dann ein Log-Eintrag erzeugt wenn wirklich was in der Registry geändert wird.
Das hier ist allerdings so nicht korrekt:
Habe OGL-FSAA einmal auf 2x gesetzt, Log geleert und dann 6x ausgewählt, das kam dabei heraus:
Wrote integer data to registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Video\
{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}\0000\OpenGL\OGLFullSceneAAScale=0x00000006
Wrote integer data to registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Video\
{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}\0000\OpenGL\OGLAliasSlider=0x00000003
Wrote integer data to registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Video\
{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}\0000\OpenGL\OGLAliasSlider=0x00000002
Sieh Dir den Code am besten noch mal genau an, das passiert bei fast jedem OGL-FSAA-Wechsel.
So, und das hier passiert wenn ich OGL-FSAA abschalte:
Wrote integer data to registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Video\
{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}\0000\OpenGL\OGLFullSceneAAScale=0x00000000
Wrote integer data to registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Video\
{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}\0000\OpenGL\OGLSmoothPref=0x00000001
OGLSmoothPref wird bei mir also nicht im CP-Key gesetzt.
So, und das hier passiert bei OGL-AF bei Off --> 2x tri:
Wrote integer data to registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Video\
{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}\0000\OpenGL\OGLMaxAnisotropy=0x00000002
Wrote integer data to registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Video\
{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}\0000\OpenGL\OGLAnisoPref=0x00000000
Wrote integer data to registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Video\
{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}\0000\OpenGL\OGLAnisoSlider=0x00000000
Wieder nix im CP-Key.
D3D-AF umgestellt von 2x tri auf Off:
Wrote Text data to registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Video\
{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}\0000\AnisoDegree=0x00000000
So, und das mit dem Radiobutton "Quality" beim D3D-AF läßt sich in der Tat dadurch lösen den anderen Tri-Modus zu wählen; das CP kommt eben einfach nicht mit dem anderen Wert klar. Kann man nix machen.
Es kann natürlich sein daß bei manchen der hier kopierten Einträge nur das Log falsch geschrieben wurde, mußt Du wissen ob das vorkommen könnte. Ich hab jetzt nur manche der Einträge im CP gegengetestet, aber überall wo ichs kontrolliert hab stimmte das mit dem Log überein, war also falsch/unvollständig.
Ich hoffe die Logs reichen Dir erst mal, ich kann Dir sonst auch gerne noch weitere Debug-Infos geben wenn Du mir sagst was Du brauchst...
-BlueSteel
Original geschrieben von BlueSteel
So, und das mit dem Radiobutton "Quality" beim D3D-AF läßt sich in der Tat dadurch lösen den anderen Tri-Modus zu wählen; das CP kommt eben einfach nicht mit dem anderen Wert klar. Kann man nix machen.Japp. Das nehme ich mal in kauf. Ist ein "Fehler" von ATI, CP- und Treiber-Settings erst zu trennen, dann aber doch nicht so richtig.
Hast du btw. Cat 4.1?
Zu den anderen Dingen: Im Moment zählt nur, ob das CP richtig gesetzt wird. Welche Einstellungen (AA, AF, je für OGL und D3D) führen noch nicht zu den richtigen CP-Settings? (Abgesehen vom tri-AF in D3D.)
Ob aTuner unter Umständen "zu viel" schreibt, kommt dann. In deinen Logs weiß ich jetzt nicht, welcher Key was ist. Im Moment bräuchte ich keine Logs, sondern eben eine Aufstellung wie im obigeren Posting: Was funzt, was funzt nicht (und warum funzt es nicht, also fehlen die Werte oder sind sie falsch.)
BlueSteel
2004-01-28, 00:35:58
Ich hab die Cat 4.1, wenn ich das aber richtig gesehen hab sollte das kein Problem sein da sich nix in der Art der Speicherung verändert hat.
Zu den CP-Settings:
Irgendwie hat sich da nichts groß getan, der Fehler hier ist noch drin:
D3D-AF:
Bilinear:
Die Sliderposition wird gesetzt, allerdings wird bei "Off" das Feld nicht deaktiviert. (AnisoType = "0" wird nicht gesetzt) Der Radiobutton steht korrekt auf "Leistung".Der hier auch:OpenGL-FSAA:
Der Eintrag OGLSmoothPref (für FSAA-Slider an/aus) muß im CP-Key gesetzt werden, nicht im Treiber-Key.Und auch hier muß ich mich wiederholen:OpenGL-AF:
Hier muß im CP-Key noch das Setting OGLAnisoPref verändert werden. "0" wenn AF deaktiviert sein soll, ansonsten "1".
Wobei das OGL-AF jetzt gar nicht synchron ist, weder das Häkchen davor noch der Slider; weiß nicht ob das vorher auch der Fall war.
In den Logs kannst Du ja sehen was in jedem Fall gesetzt wird, im CP-Key wird generell ziemlich wenig gesetzt.
Hier ist mal ein Beispiel (vermutlich das einzige) wo's funktioniert, aus dem D3D-FSAA (Off -> 6x):
Wrote Text data to registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Video\
{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}\0000\AntiAlias=0x00000002
Wrote integer data to registry:
HKEY_LOCAL_MACHINE\SOFTWARE\ATI Technologies\Desktop\{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}
\Dir3DSmoothPref=0x00000000
Wrote integer data to registry:
HKEY_LOCAL_MACHINE\SOFTWARE\ATI Technologies\Desktop\{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}
\Dir3DAliasSlider=0x00000002
Wrote Text data to registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Video\
{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}\0000\AntialiasSamples=0x00000006
Mag sein daß das auch irgendwo mit den Cat4.1 zusammenhängt, werde ich mir morgen mal genauer ansehen.
-BlueSteel
Bitte neue Beta (1.7.56) testen. Geht das schon besser? Was funzt da noch nicht?
BlueSteel
2004-01-30, 23:52:59
Soweit klappt die Sache jetzt, nur noch zwei Kleinigkeiten:
Beim OGL-AF muß noch im Treiber-Key das Setting "OGLAnisoType" auf "0" gesetzt werden wenn AF deaktiviert wird damit auch die Quality-Radiobuttons ausgegraut werden.
Und bei D3D-AF hab ich bei meinen letzten Posts was übersehen, da muß noch im CP-Key das Setting "Dir3DAnisoPref" auf 1 gesetzt werden wenn AF deaktiviert wird, das steuert das Häkchen bei "Standardeinstellung" welches auch dafür sorgt daß der Slider ausgegraut wird. Also "1" für "Off", ansonsten "0".
Naja, und Du solltest Dir noch mal das OGL-FSAA ansehen, da wird im CP-Key das Setting OGLAliasSlider erst 1 zu hoch gesetzt und danach sofort korrigiert, so wie hier:
Wrote integer data to registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Video\
{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}\0000\OpenGL\OGLFullSceneAAScale=0x00000006
Wrote integer data to registry:
HKEY_LOCAL_MACHINE\SOFTWARE\ATI Technologies\Desktop\
{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}\OGLAliasSlider=0x00000003
Wrote integer data to registry:
HKEY_LOCAL_MACHINE\SOFTWARE\ATI Technologies\Desktop\
{E9B9CE8A-BC1E-47DD-9E9A-1933060C34A5}\OGLAliasSlider=0x00000002Hast Du eigentlich irgendwann letztens noch mal die Apply-Pause modifiziert? Bei mir passt das jetzt perfekt, ich seh nach dem Blackscreen grade noch den Balken verschwinden bevor das Spiel gestartet wird.
Ich glaube so langsam passt die Sache ;)
-BlueSteel
Original geschrieben von BlueSteel
Naja, und Du solltest Dir noch mal das OGL-FSAA ansehen, da wird im CP-Key das Setting OGLAliasSlider erst 1 zu hoch gesetzt und danach sofort korrigiert, so wie hier:Guck ich mir später an.
Original geschrieben von BlueSteel
Soweit klappt die Sache jetzt, nur noch zwei Kleinigkeiten:
Beim OGL-AF muß noch im Treiber-Key das Setting "OGLAnisoType" auf "0" gesetzt werden wenn AF deaktiviert wird damit auch die Quality-Radiobuttons ausgegraut werden.Sollte jetzt gesetzt werden.
Beides bitte austesten :)
Original geschrieben von BlueSteel
Und bei D3D-AF hab ich bei meinen letzten Posts was übersehen, da muß noch im CP-Key das Setting "Dir3DAnisoPref" auf 1 gesetzt werden wenn AF deaktiviert wird, das steuert das Häkchen bei "Standardeinstellung" welches auch dafür sorgt daß der Slider ausgegraut wird. Also "1" für "Off", ansonsten "0".Müsste jetzt klappen.
Original geschrieben von BlueSteel
Hast Du eigentlich irgendwann letztens noch mal die Apply-Pause modifiziert? Bei mir passt das jetzt perfekt, ich seh nach dem Blackscreen grade noch den Balken verschwinden bevor das Spiel gestartet wird.Vor einiger Zeit wurde die Pause halbiert.
BlueSteel
2004-01-31, 01:49:20
Da war ich zu schnell...hatte Dir grade schon nen Bugreport geschrieben als ich festgestellt hab daß ich noch mal die .56er runtergeladen hatte ;)
Der Forum-Mailer ist einfach zu effizient :D
Die .57er sieht aber bisher sehr gut aus, bis auf die kleine Unstimmigkeit im OGL-FSAA (die ja nichts am Endergebnis ändert) und die Sache mit dem D3D-Aniso-Quality-Radiobutton (die ja an ATi liegt) sollte das Ganze jetzt wie geplant funktionieren.
Naja, und es besteht halt noch der Unterschied daß bei D3D grundsätzlich die neuen Settings geschrieben werden während bei OpenGL nur tatsächliche Änderungen berücksichtigt werden. Aber außer daß das im Log etwas unschön aussieht stört das ja nicht wirklich...
Wie immer, wenn ich noch was finden sollte melde ich mich. Aber vorerst bin ich ganz zufrieden :up:
-BlueSteel
Gut, das wichtigste wäre dann erst mal geschafft. Später ist dann die "Kosmetik" dran.
Außerdem werden ab sofort Wünsche für die Extra-Panels entgegen genommen. Wenn es geht, bitte auch gleich die entsprechenden Registry-Settings verraten.
BlueSteel
2004-02-01, 00:14:55
Wünsche für die Extra-Panels?
Also, ich hätt dann gerne eine Option um den MipMap-LOD Bias auf negative Werte zu stellen, ein Setting um das PreRender-Limit auf 0 zu setzen und wo wir schon dabei sind eine Checkbox für "Full angle AF" :bäh:
Naja, aber mal im Ernst: Viel gibts da bei ATi eigentlich nicht was man dringend verstellen müßte bzw. überhaupt könnte...aber wo Du schon mal fragst, in den Extra-Panels ist ja noch etwas Platz für z.B. TruForm oder die SmartShader-Effekte. Auch wenn das garantiert nicht die essentiellsten Features sind... ;)
TrueForm ist aber einfach zu implementieren, da wird nix im CP-Key verändert. Einfach nur "TruformMode" für D3D (String, 1=an, 0=aus) und "OGLTruformMode" für OpenGL (DWORD, 1=an, 0=aus).
Die SmartShader-Effekte wären auch sehr einfach per Auswahlfeld zu implementieren, wieder nix im CP-Key. Allerdings sind die erst ab Cat 3.8(?) drin, müßte eine passende Fußnote dabei.
Die Settings lauten "SwapEffect" für D3D (String, "0" bis "9") und "OGLSelectedSwapEffect" für OpenGL (DWORD, von "00000000" bis "0000000b").
Die Liste mit den englischen Bezeichnungen und Werten für D3D:
"No Effect" "0"
"Black & White" "1"
"Classic" "2"
"Inverse Color" "3"
"Porthole" "4"
"RGB Cycle" "8"
"Stylize - Color" "9"
(keine Ahnung was mit 5-7 passiert ist, geht wohl unter D3D nicht so einfach)
Das Gleiche für OpenGL:
"No Effect" "0"
"Black & White" "1"
"Classic" "2"
"Inverse Color" "3"
"Porthole" "4"
"Sketch" "5"
"White ASCII" "6"
"Green ASCII" "7"
"RGB Cycle" "8"
"Stylize - Color" "9"
"Stylize - Black & White" "b"
Weitere inoffizielle Modi (schamlos aus 3DProf geklaut):
"Blur" "c"
"Light Blur" "d"
"Sharpen" "e"
"Relief" "f"
"Etch" "10"
"Outline" "11"
Es gibt für D3D noch eine Reihe weitere Settings (deaktivieren von DXT/T&L usw.), aber über deren Sinn und Nutzen läßt sich streiten...viele davon sind vermutlich auch nur Relikte aus alten Treiberversionen die gar nichts mehr bewirken. Eine wirklich alte Liste mit solchen Settings findet sich hier (http://www.rage3d.com/radeon/reg/index.shtml). (die Links für die weiteren Seiten funktionieren noch)
Sag bescheid wenn Du was von den erwähnten Settings einbauen willst, dann versuch ich mal eine Liste zu erstellen was davon brauchbar wäre und noch funktioniert.
-BlueSteel
Original geschrieben von BlueSteel
Naja, aber mal im Ernst: Viel gibts da bei ATi eigentlich nicht was man dringend verstellen müßte bzw. überhaupt könnte...aber wo Du schon mal fragst, in den Extra-Panels ist ja noch etwas Platz für z.B. TruForm oder die SmartShader-Effekte. Afaik ist echtes HW-Truform nur im R200 drin. Die Smarthshader-Effekte klingen da schon interessanter. Wäre auch relativ einfach zu implementieren.
Welche Spiele unterstützen TruForm noch?
BlueSteel
2004-02-01, 02:31:41
Spiele die TruForm unterstützen? Mal überlegen...ich glaube das erste und letzte Mal hab ich die Option bei Serious Sam gesehen.
Außerdem weiß ich von einem Tool das TruForm bei Morrowind implementiert, das war's auch schon wieder...
Ich hab son Gefühl das Feature ist den Button nicht wert mit dem man's einschaltet ;)
Naja, die SmartShader eigentlich auch nicht, aber die kann man immerhin zu jedem beliebigen Spiel zuschalten, mit unabsehbaren Folgen :D
-BlueSteel
Original geschrieben von BlueSteel
Naja, die SmartShader eigentlich auch nicht, aber die kann man immerhin zu jedem beliebigen Spiel zuschalten, mit unabsehbaren Folgen :D
-BlueSteel Das ist das eigentliche Problem: Ich müsste mal überlegen, diese Effekte in Profilen speicherbar zu machen (zuerst aber natürlich überhaupt mal einbauen.) Bzw. zumindest ohne Aufruf des Extra-Panels (wo ein Umstellen natürlich auch möglich sein sollte) ein "Durchschalten" der Effekte gestatten. Im Moment habe ich zwar anderes zu tun als groß programmieren zu können, aber dabei kann ich die Sache wenigstens durchdenken.
BTW, schon seit einiger Zeit gibt es den Konsolen-Befehl
fastcpemulation=true
(bzw ~=false)
Das blendet einen kleinen Button ein, mit dem man schnell zwischen Full Tri und Stage-0-Tri umschalten kann. Wenn "A" zu sehen ist, ist full Tri aktiv, wenn "C" zu sehen ist, ist CP-like "Quality" aktiv. Das Feature müsste noch getestet werden.
BlueSteel
2004-02-01, 18:54:59
So wie die Smartshader aussehen wage ich mal zu bezweifeln daß jemand tatsächlich auf die Idee kommen könnte die dauerhaft mit einem Spiel/Profil verknüpfen zu wollen...da sollte ein Auswahlfeld im Extra-Panel ausreichen. Ich finde das sind mehr so Effekte die man einfach nur so mal ausprobiert; das lohnt den Aufwand nicht die großartig mit den Profilen zu verknüpfen oder im Hauptfenster unterzubringen.
Wobei ich dazusagen muß daß ich die inoffiziellen Shader wie Blur/Sharpen und so noch nicht getestet habe, aber ich glaube kaum daß die besser sind...vor allem gehen die nur unter OpenGL das momentan ja eher ein Nischendasein fristet...
Der Konsolenbefehl "fastcpemulation=true" ist durchaus nützlich (und funktioniert auch), kannst Du das im Profil speicherbar machen? Ich glaube bei einigen Spielen ist das wichtig; bei Mafia braucht man Full Tri um überhaupt was vom AF zu sehen während FarCry mit der "optimierten" Fassung sehr viel schneller läuft (muß nur mal jemand den Shadow-Bug fixen).
Allerdings würde ich den Button etwas anpassen; zum einen kann ich mir absolut nicht merken was "A" und was "C" jeweils ist und zudem verschwindet bei aktiviertem Button leider das "bi" bzw. "tri" im Auswahlfeld. Schlage vor bei aktiviertem Button "Anisotropic" durch "Aniso" abzukürzen damit wieder alles ins Feld passt und entweder die Button-Beschriftung zu ändern oder ein Tooltip einzubauen. Vielleicht "Q" für "Quality" und "P" für "Performance"? ( oder "F" für "Fast", ist Dir vermutlich lieber)
Hast Du eigentlich irgendwo eine Liste mit diesen Konsolenbefehlen? Vielleicht ist da ja noch mehr bei was ich brauchen könnte ;)
-BlueSteel
Probier mal bitte, was D3D-Smartshader-Effekte 5-7 bewirken, und was OGL Effekt "A" macht.
BTW sehe ich gerade, dass ich offenbar die Datentypen etwas durcheinander werfe. Werden für alle D3D-Settings Strings geschrieben, und für die OpenGL-Settings Integer?
edit: In einer Arbeitspause eben habe ich fix eine neue Beta zusammengeschustert. Teste die doch mal, damit ich weiß, ob man mit dieser Methode "auf dem richtigen Weg" ist.
BlueSteel
2004-02-01, 20:20:42
Brrr...ich bin grade mal die D3D-Effekte durchgegangen, die meisten davon sind echt grausam. Bau die bloß nicht in die Profiles ein! :D
5-7 sind einfach nicht belegt, passiert gar nix.
Man muß übrigens ein Apply durchführen damit die was bewirken, müßtest Du also den Button freischalten wenn man was an den D3D-SmartShadern verändert.
Die Datentypen sind zumindest in den Cat 4.1 bei D3D Strings und bei OpenGL DWORD was wohl so ne Art Int ist, kenn mich mit den Reg-Datentypen nicht so aus.
Jetzt lad ich grad mal die beta und probier die aus, so oft wie Du Deinen Post editierst hab ich da schon was neues stehen wenn ich nur mal auf "Reply" drücke ;)
Die OpenGL-Settings prüfe ich dann auch noch, dann kann ich auch sagen ob da vielleicht was brauchbares bei ist. Die D3D-Shader kann man allesamt vergessen.
-BlueSteel
Original geschrieben von BlueSteel
Strings und bei OpenGL DWORD was wohl so ne Art Int ist, kenn mich mit den Reg-Datentypen nicht so aus.Ja, eigentlich sollte aTuner DWord für OpenGL nutzen, und String für D3D. Nur ist die Prozedur zum Füllen der aTuner-Internen Entrys-Struktur inzwischen etwas unübersichtlich. Wohlmöglich schreibt er mal ein DWord für ein D3D-Setting oder einen String bei einem OpenGL-Setting. Vor allem die Extra-Panels wären diesbezüglich mal zu testen.
BlueSteel
2004-02-01, 20:48:24
So, jetzt bin ich auch mit OpenGL durch. Da ist zwar auch nix bei was man beim Spielen aktiviert haben möchte, aber einige der Effekte (ASCII/Sketch) sind immerhin ganz interessant anzuschauen. Mach auf jeden Fall noch die inoffiziellen Effekte rein, die funktionieren. Zumindest bei Cat4.1...
Die Werte sind genau wie in der Liste oben beschrieben, "a" fehlt und Werte höher als "11" bewirken auch nichts. (alles HEX-Zahlen, hab mich da etwas verwirren lassen)
Ich bin mal alle Funktionen in den Extra-Panels durchgegangen, da stimmen die Datentypen. Und bei den "normalen" Settings ist mir bisher auch nichts aufgefalle nwas nicht funktionieren würde, mal von dem doppelt (1. mal zu hoch) gesetzten OGLAliasSlider.
Die SmartShader funktionieren schon so wie Du die eingebaut hast, aber ich vermute Du machst da noch Auswahlfelder raus, oder? Wenn nicht mußt Du noch einen Bug in den Listen fixen, der erste Klick in eine Liste nach dem Öffnen des Extra-Panels wird nämlich einfach ignoriert; die Markierung springt einfach wieder zurück. Wenn "Apply&Close" aktiviert ist wird sogar das Fenster geschlossen, das Setting aber nicht in die Registry übernommen. Erst der 2. Klick funktioniert wie gewünscht.
Außerdem kannst Du ja noch versuchen den Apply-Button zu aktivieren falls "Apply&Close" nicht aktiviert ist und was an den D3D-Shadern geändert wird.
-BlueSteel
Original geschrieben von BlueSteel
Die SmartShader funktionieren schon so wie Du die eingebaut hast, aber ich vermute Du machst da noch Auswahlfelder raus, oder? Wenn nicht mußt Du noch einen Bug in den Listen fixen, der erste Klick in eine Liste nach dem Öffnen des Extra-Panels wird nämlich einfach ignoriert; die Markierung springt einfach wieder zurück. Wenn "Apply&Close" aktiviert ist wird sogar das Fenster geschlossen, das Setting aber nicht in die Registry übernommen. Erst der 2. Klick funktioniert wie gewünscht.Ist das nur bei den D3D-Effekten so, oder auch bei OpenGL?
Original geschrieben von BlueSteel
Außerdem kannst Du ja noch versuchen den Apply-Button zu aktivieren falls "Apply&Close" nicht aktiviert ist und was an den D3D-Shadern geändert wird.Ist in Arbeit ...
BlueSteel
2004-02-02, 20:57:55
Das mit dem 1. Klick passiert in beiden Listen, sowohl D3D als auch OpenGL. Es gibt aber auch ganz seltene Ausnahmen wo bereits der 1. Klick erkannt wird...
Ach so, und die Listen sind noch nicht mit dem "Reset to driver's default"-Button verbunden, wäre ja vielleicht sinnvoll wenn der Button auch die SmartShader deaktivieren würde.
-BlueSteel
Original geschrieben von BlueSteel
Das mit dem 1. Klick passiert in beiden Listen, sowohl D3D als auch OpenGL. Es gibt aber auch ganz seltene Ausnahmen wo bereits der 1. Klick erkannt wird...Keine Ahnung, woher das kommt. Normalerweise wird das Panel ja ständig aktualisiert (hat quasi eine "Echtzeit-Anzeige".) Ein Klick in die Listbox führt bereits dazu, dass die nächsten Refresh-Zyklen die Smarthshader-Effekte noch nicht neu eingelesen werden, erst nach ca. 2 Sekunden Pause wird die Listbox wieder in den Refresh "eingehängt".
Wenn es nun irgendwelche Probleme gibt, müssten die entweder ständig oder dürften eben nie auftreten. Dass es der erste Klick ist, der Sorgen macht, kann ich derzeit nicht nachvollziehen.
Original geschrieben von BlueSteel
Ach so, und die Listen sind noch nicht mit dem "Reset to driver's default"-Button verbunden, wäre ja vielleicht sinnvoll wenn der Button auch die SmartShader deaktivieren würde.Allerdings. Wird gemacht.
BlueSteel
2004-02-02, 21:12:05
Das mit den 2 Sekunden kommt hin. Wenn man 1x geklickt hat wird der Klick quasi ignoriert und der Balken einfach ohne Reg-Änderung zurückgesetzt, danach hat man dann 2s Zeit irgendwas einzustellen.
Das Problem tritt also immer dann auf wenn der Refresh aktiv ist. Vermutlich wird die Liste zu schnell aktualisiert; bevor nach einem Klick überhaupt der Refresh deaktiviert und was in die Registry geschrieben wird, wird aus selbiger bereits wieder der alte Wert ausgelesen und der Balken darauf (zurück-)gesetzt. Ich schätze da muß irgendwie die Reihenfolge geändert werden, es muß auf jeden Fall die Registry geupdated werden bevor der nächste Refresh ausgelöst werden kann.
-BlueSteel
Habe aus der ListBox eine RadioButtonGroup gemacht. Wie sieht es damit aus?
BlueSteel
2004-02-03, 00:17:36
Das funktioniert...nimmt halt nur ne Menge Platz weg.
Spricht irgendwas dagegen daraus einfach ein Auswahlfeld zu machen? (oder wieauchimmer die Dinger heißen die Du z.B. für FSAA verwendst)
Fänd ich irgendwie sinnvoller als so viele Radiobuttons...besonders bei einem Feature das man sowieso eher selten benötigt.
-BlueSteel
Original geschrieben von BlueSteel
Das funktioniert...nimmt halt nur ne Menge Platz weg.
Spricht irgendwas dagegen daraus einfach ein Auswahlfeld zu machen?ComboBoxen machen sich da schlecht. Wenn du gerade beim Auswählen bist, und er refresht, haut der dir den Itemindex weg. Da müsste das Refreshen abgeschaltet werden, solange man da rumwurschelt. Das Hauptmenü arbeitet so (Refresh nur, wenn der Fokus nicht auf einem der 6 ComboBoxen liegt) aber das hinzukriegen habe ich so in Erinnerung, dass das nicht gerade einfach war. In der nächsten Version sind die RadioGroupBoxen etwas gestaucht, um einige Pixel Fensterhöhe zu sparen.
BlueSteel
2004-02-03, 01:02:10
Verstehe ;)
Geht ja auch erst mal so; falls Dir zufällig wieder einfällt wie Du das im Hauptmenü gemacht hast kannst Du das ja vielleicht irgendwann mal umbauen.
Was sagst Du eigentlich zu meinen Kommentaren zu dem D3D-AF-Quality-Button? Oder hat der momentan keine Priorität? Dann schalt ich den wieder aus :D
-BlueSteel
Original geschrieben von BlueSteel
Verstehe ;)
Geht ja auch erst mal so; falls Dir zufällig wieder einfällt wie Du das im Hauptmenü gemacht hast kannst Du das ja vielleicht irgendwann mal umbauen. Ich weiß, wie ich es gemacht habe: Bei OnEnter wird der Refresh-Timer de-, bei OnExit re-aktiviert. Die aktuelle Lösung verbraucht eine Menge Platz, dafür reicht ein Klick. Ansonsten müsste man sich die Liste holen, und dort noch mal klicken. Wenn der Platz in den Panels knapp wird, bastel ich das vielleicht noch um.
Original geschrieben von BlueSteel
Was sagst Du eigentlich zu meinen Kommentaren zu dem D3D-AF-Quality-Button? Oder hat der momentan keine Priorität? Da überlege ich im Moment eine andere Methode: Die "Misch-Modi" direkt in die Auswahl-Liste zu nehmen. Das ist allerdings leichter gesagt als getan: Der oberschlaue aths hat viele Sachen direkt an den Itemindex gekoppelt. Da müsste an etlichen Stellen im Programm was geändert werden. Deshalb überlege ich, den Button einfach umzuplatzieren, sowie die Anzeige 'C' oder 'A' nicht nur abhängig vom Extra-Panel zu machen, sondern die tatsächliche Einstellung auszulesen.
BTW wird "bi" oder "tri" in der Title-Bar angezeigt.
BlueSteel
2004-02-03, 14:49:08
Original geschrieben von aths
Da überlege ich im Moment eine andere Methode: Die "Misch-Modi" direkt in die Auswahl-Liste zu nehmen. Das ist allerdings leichter gesagt als getan: Der oberschlaue aths hat viele Sachen direkt an den Itemindex gekoppelt. Da müsste an etlichen Stellen im Programm was geändert werden. Deshalb überlege ich, den Button einfach umzuplatzieren, sowie die Anzeige 'C' oder 'A' nicht nur abhängig vom Extra-Panel zu machen, sondern die tatsächliche Einstellung auszulesen.
ItemIndex? Hat jeder Eintrag der Auswahllisten einen solchen Index oder nur die Liste an sich?
Sonst wär's vielleicht zukunftssicherer beide AF-Listen auf 2x/4x/8x/16x zu beschränken und dafür in der Mitte eine neue Liste/Button einzufügen mit dem man dann zwischen den 3 AF-Qualitätsstufen für beide AF-Listen umschalten kann.
Würde halt nur das gewohnt Layout ziemlich durcheinanderwerfen...aber da NVIDIA ja vermutlich auch bald 16x anbieten wird wäre das auf lange Sicht -möglicherweise- der bessere Weg.
Aber vermutlich wäre das sowieso ein viel zu großer Aufwand. Würde nur vielleicht das Speichern etwas vereinfachen; wäre ja schon sinnvoll wenn auch der jeweilige Tri-Modus im Profil mitgespeichert wird. Oder passiert das ohnehin schon?
-BlueSteel
Original geschrieben von BlueSteel
ItemIndex? Hat jeder Eintrag der Auswahllisten einen solchen Index oder nur die Liste an sich?ItemIndex ist ein Integer, der angibt, welche Stelle gerade ausgewählt ist. -1 heißt, nichts ist gewählt. Weil das Prinzip bei vielen Elementen das gleiche ist, war die Umwandlung der ListBox in die RadioGroupBox praktisch ohne Aufwand möglich. Ebenso könnte man auch ComboBoxen nehmen, aber vorerst will ich die RadioButtons lassen.
Original geschrieben von BlueSteel
Sonst wär's vielleicht zukunftssicherer beide AF-Listen auf 2x/4x/8x/16x zu beschränken und dafür in der Mitte eine neue Liste/Button einzufügen mit dem man dann zwischen den 3 AF-Qualitätsstufen für beide AF-Listen umschalten kann. Das hätte zwar einiges einfacher gemacht, da der Treiber auch getrennt speichert, widerspricht aber der aTuner-Logik: So wenig Klicks, wie möglich. Bzw, ein Feld für jede Option.
aTuner soll ja nicht nur ein alternatives CP-Frontent sein.
Ich ging davon aus, dass die Entscheidung, ob volles tri oder nur TS0-tri nur selten verändert wird. Offiziell gibt es ja nur Quality und Performance, volles tri ist inoffiziell und kann wohl mit jeder Version aus dem Treiber fliegen. Das wäre das Risiko, würde ich die Liste umstellen.
Original geschrieben von BlueSteel
Würde halt nur das gewohnt Layout ziemlich durcheinanderwerfen...aber da NVIDIA ja vermutlich auch bald 16x anbieten wird wäre das auf lange Sicht -möglicherweise- der bessere Weg.Für GF und Radeon-Karten wird sowohl zum Ausfüllen der Boxen, als auch zum Setzen des ItemIndex je nach Registry-Wert ein anderer "Codepath" durchlaufen. Bei GF vergleicht er den gelesenen Wert mit denen, die er kennt, und stellt die korrespondierende Option in der Combobox ein. Für Radeon geht er eine Tabelle durch, in der Modus und Qualitäts-Einstellung eine Rolle spielen.
Original geschrieben von BlueSteel
Würde nur vielleicht das Speichern etwas vereinfachen; wäre ja schon sinnvoll wenn auch der jeweilige Tri-Modus im Profil mitgespeichert wird. Oder passiert das ohnehin schon?Nein. Das Profil speichert den Itemindex der Comboboxen.
BlueSteel
2004-02-03, 18:13:33
Verstehe.
Das Problem ist halt daß es durchaus Spiele gibt wo einer der beiden Tri-Modi sinnvoller ist; wie schon gesagt braucht man z.B. bei Mafia FullTri um überhaupt anisotrop gefilterte Texturen zu haben während bei anderen Spielen kaum ein Unterschied festzustellen ist.
FarCry z.B. hat mit FullTri erheblichen Performance-Verlust (~20%) während TS0-Tri fast gar keine Performance bei gleicher Bildqualität kostet. Ich hab mit der Radeon noch nicht derart viele Spiele ausprobiert aber ich schätze den Effekt dürfte man öfters haben.
Der Kompromiss wäre dann vielleicht wirklich alle AF-Möglichkeiten in die ComboBox(?) aufzunehmen, wären insgesamt 13 Optionen. Bei OpenGL ändert sich nichts da dort ja immer FullTri verwendet wird. Dann könnte der AF-Typ gespeichert werden, das Layout/Konzept bliebe beinahe erhalten und der kleine Button kann wieder weg.
Die Nachteile sind der Mehraufwand für Dich beim Implementieren und die Tatsache daß die ComboBox dann 13 Einträge enthält was ein wenig der Benutzerfreundlichkeit widerspricht.
Letzteres ließe sich vielleicht dadurch beheben daß Du den Code für die ComboBox vor dem modifizieren unter anderem Namen kopierst so daß man in den Optionen zwischen beiden ComboBox-Typen wählen könnte; ist die Frage wieviel Mehraufwand das wieder bedeuten würde.
Aber mir fällt momentan keine einfachere Lösung ein, außer natürlich daß ich einfach den Button wieder abschalte und das jedes Mal manuell im Extra-Panel umschalte ;)
(Der Button ist nämlich auch buggy, den juckt nicht was man im Extra-Panel einstellt...)
Aber die Sache eilt ja sowieso nicht, außer mir juckt das garantiert sowieso keinen :D
-BlueSteel
BlueSteel
2004-02-13, 11:13:52
Neuer Catalyst und direkt ein "Problem":
ATi hat's geschafft den D3D-Apply so umzustricken daß der Screen dabei nicht mehr dunkel wird.
Es ist zwar immer noch eine spezielle Funktion nötig, aber der Monitor muß dafür nicht die Auflösung wechseln; geht dementsprechend natürlich auch etwas schneller. Das einzig Sichtbare dabei ist ein Refresh der Einstellungsfenster.
Trotzdem reicht es leider nicht aus einfach wie bei OpenGL die Einstellungen zu setzen und schon funktionierts, irgendetwas muß da noch im Hintergrund passieren.
Leider hab ich bisher keine Ahnung was genau das ist; vermutlich wird irgendeine Funktion aus einer der Treiber-DLLs ausgelöst. Weißt Du zufällig eine Methode mit der man näheres herausfinden könnte? Ich bin da etwas überfragt...
Hier ist der Auszug aus den Releasenotes:
Direct3D Setting Enhancement
Previous versions of the ATI display driver required the monitor going blank for up to 8 seconds when applying Direct3D settings. The latest ATI software driver for the RADEON™ 9500 and higher class of products now allows for the Direct3D setting to be applied without the monitor's display going blank.Problem ist natürlich auch daß das nur ab 9500 und Cat 4.2 geht, müßte also erst mal eine Catalyst-Erkennung in den aTuner...
Und ich hab noch was für die Extra-Panels; ich hab die ganze Zeit im CP den Button "Kompatibilität" übersehen.
Für D3D gibts da folgende Optionen:
"Unterstützung DXT Texturformate" (an/aus, default: an)
Treiber-Key: "ExportCompressedTex"
"0" = aus
"1" = an
Nichts im CP-Key.
"Pixel-Zentrum wechseln" (an/aus, default: aus)
Treiber-Key: "PixelCenter"
"0" = aus
"1" = an
Nichts im CP-Key.
Und für OpenGL gibts noch diese Option:
"Tiefe des Z-Buffers erzwingen" (aus/16bit/24bit, default: aus)
Die Werte sind "0", "12" und "18" HEX, also "0", "16" und "24" dec.
Wieder nichts im CP-Key.
Die andere Option ist nur TripleBuffering, die hast Du ja schon drin.
Da man diese Optionen sogar im CP setzen kann halte ich das schon für Sinnvoll daß ein Tweak-Programm diese auch anbieten sollte.
Die anderen neuen Features werde ich noch testen, hab jetzt wieder etwas mehr Zeit.
EDIT:
Shaderbegrenzer funktioniert, wie im anderen Thread beschrieben.
Was die ATi-Treiberversion betrifft solltest Du vielleicht mal Spike von DriverHeaven kontaktieren, der hat ein Tool (http://www.driverheaven.net/cleaner/tools.htm) geschrieben das anhand von 8 DLLs die Catalyst-Version erkennt. Könnte man ja so in den aTuner übernehmen wenn Spike nichts dagegen hat; daraus könnte man sogar eine Abfrage machen die checkt ob Treiber- und CP-Version zusammenpassen oder ob irgendeine DLL in einer falschen Version vorliegt und ggf. beim Programmstart einen passenden Hinweis einblenden (natürlich dauerhaft deaktivierbar).
-BlueSteel
mapel110
2004-02-13, 11:48:33
Original geschrieben von BlueSteel
Die andere Option ist nur TripleBuffering, die hast Du ja schon drin.
Da man diese Optionen sogar im CP setzen kann halte ich das schon für Sinnvoll daß ein Tweak-Programm diese auch anbieten sollte.
Ist schon drin.
Die restlichen Settings sind wohl problematisch.
"Alternative Pixelcenter" wurde afaik bislang nur für Yager gebraucht.
Original geschrieben von BlueSteel
Problem ist natürlich auch daß das nur ab 9500 und Cat 4.2 geht, müßte also erst mal eine Catalyst-Erkennung in den aTuner...Cat-Erkennung ist theoretisch drin. Praktisch funktioniert das nicht so, wie gedacht. aTuner versucht, die Dateiversion auszuwerten und in einer Tabelle nachzuschlagen, aber offenbar kommt der jeweils gleiche Cat durchaus mit unterschiedlichen Versionen. Wenn ich denn wenigstens die Garantie hätte (das wäre noch zu prüfen) ob alle höheren Cats auch höhere Datei-Versionsnummern haben, wäre eine Cat 4.2-Erkennung drin.
Original geschrieben von BlueSteel
Da man diese Optionen sogar im CP setzen kann halte ich das schon für Sinnvoll daß ein Tweak-Programm diese auch anbieten sollte.aTuners Philosophie ist, auch in den Extra-Panels Optionen anzubieten, die man häufiger mal umstellt.
Die anderen neuen Features werde ich noch testen, hab jetzt wieder etwas mehr Zeit.
Original geschrieben von BlueSteel
Shaderbegrenzer funktioniert, wie im anderen Thread beschrieben. Sehr gut.
Original geschrieben von BlueSteel
Was die ATi-Treiberversion betrifft solltest Du vielleicht mal Spike von DriverHeaven kontaktieren, der hat ein Tool (http://www.driverheaven.net/cleaner/tools.htm) geschrieben das anhand von 8 DLLs die Catalyst-Version erkennt.Eine Datei sollte eigentlich ausreichen. aTuners Algo sollte so arbeiten, dass die jeweils "letzte" Treiberversion auch für alle zukünftigen verwendet wird (bis halt ein neuer aTuner rauskommt.) Das Tool muss also nicht unbedingt die Version (mittels Nachschlagen in einer Tabelle) ermitteln, sondern ob 4.2 oder größer installiert ist.
Angeblich wird die Cat-Version auch in der Registry gespeichert? Das wäre zwar vom User änderbar, aber letztlich könnte aTuner damit ja arbeiten.
BlueSteel
2004-02-13, 13:30:30
Folgende Versions-Infos finden sich in der Registry:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Video\
{C0CE4CB4-F6C4-47D8-A8B9-0509BACBB878}\0000]
"ReleaseVersion"="7.981-040127m-013420C-ATI"
"BuildNumber"="13420"
"Catalyst_Version"="04.2"
Sollte ja ausreichen, z.B. ein Check "Build-Number > 13420" oder so.
Falls Du noch weitere versions-spezifische Features findest kannst Du ja kurz bescheid geben ab welchem Cat das funktioniert und ich liefer Dir die passende Build-Number.
Irgendeine Idee wie man herausfinden könnte wie der Apply jetzt funktioniert? Ich würde sonst mal ne Mail an ATi schreiben, aber Du hast da sicherlich den besseren Draht... ;)
-BlueSteel
Diese Cat 4.2-Sache kommt mir zeitlich etwas ungelegen. Deshalb stelle ich erst mal reine Funktionalität in den Vordergrund: Läuft der aktuelle aTuner (die aktuelle Beta) mit 4.2?
BlueSteel
2004-02-13, 18:45:43
Laufen tut der ohne Probleme.
ATi scheint also nichts direkt am Apply bzw. dessen Notwendigkeit geändert zu haben sondern hat nur eine Methode gefunden die Monitorumschaltung zu umgehen. Der alte Apply tut's aber auch noch.
Vermutlich wird ähnlich wie beim VPU-Recover der Treiber neugestartet oder sowas in der Art, ich versuche mal mehr darüber herauszufinden. Vielleicht wird ja sogar wirklich nur das VPU-Recover getriggert...
Ich würde aber sagen Du kannst das Ding vorerst veröffentlichen; von ATi-Seite aus gibt es soweit ich das überblicken kann keine Probleme.
-BlueSteel
BlueSteel
2004-03-11, 13:28:51
Catalyst 4.3 + aTuner = Problem!
ATi hat sich wohl gedacht es wäre mal lustig die Keys in der Registry durcheinanderzuwürfeln...
Ab Cat 4.3 wird nichts mehr im CP-Key gespeichert was direkt mit dem 3D-Settings zu tun hat. Nur führt das leider erst mal dazu daß der aTuner nicht mehr funktioniert.
Bei D3D funktionieren wenigstens noch die 3D-Optionen, auch wenn das CP nicht mehr damit synchron ist. Bei OpenGL dagegen geht gar nix mehr da an die falsche Stelle geschrieben wird...
Wenn ich das richtig überblicke haben sich aber nur die Speicherorte und nicht die Variablenbezeichnungen verändert, sollte also nicht allzu schwer zu fixen sein. Im Gegenteil, es wird jetzt nämlich nur noch an eine einzige Stelle geschrieben: sämtliche Reg-Entrys die für die 3D-Optionen benötigt werden befinden sich jetzt unter "HKLM\System\CCS\Control\Vide0\{HW-ID}\0000". Und mit "sämtliche" meine ich OpenGL, D3D und auch die CP-Settings.
Die Catalyst-Version findet sich jetzt auch unter diesem Key, ein String mit der Bezeichnung "Catalyst_Version" und dem Wert "04.3".
Normal sollte es also ausreichen daß Du die Cat-Version überprüfst und ab Cat 4.3 einfach komplett alles was der aTuner so schreibt unter den oben genannten Key packst. Zum Test sollte da eigentlich ein ganz kleiner Hack möglich sein der einfach alle geschriebenen Settings "umleitet", dann könnte ich direkt testen ob das so funktioniert oder ob einzelne Variablen umbenannt wurden.
-BlueSteel
Hrn, das passt mir *jetzt* gar nicht.
Danke für die Beschreibungen. Ich werde nachher mal Cat 4.3 installieren und versuchen, das irgendwie lauffähig hinzukriegen.
BlueSteel
2004-03-11, 15:14:43
Falls meine Vermutung stimmt sollte das wie gesagt recht schnell zu machen sein, einfach prüfen ob Cat. >= 4.3 installiert sind (steht ja im Klartext da) und in dem Fall jeden Reg-Schreibvorgang auf die neue Adresse umleiten.
Ich weiß ja nicht wie Du den aTuner strukturiert hast, aber da müßte doch irgendwo eine Stelle sein an der man die Schreibvorgänge abfangen und die Strings modifizieren kann, oder? Ist zwar eine etwas unschöne Lösung, aber solange das klappt reichts ja für den Anfang...
-BlueSteel
Nah, solche Umstände sind nicht notwendig. Der aTuner ist dafür gebaut, mit unterschiedlichen Treibern zurechtzukommen. Zeit kostet's trotzdem, und im Moment habe ich eigentlich keine Zeit. Ich kann nicht versprechen, dass es diese Woche ein 4.3-kompatibles Update gibt.
Ok, "Notupdate" (konnte ich noch nicht mit 4.3 testen.) Normaler Link für die Beta.
Habe jetzt die Cat-Versionserkennung umgestellt, dass er den String auswertet. Ab 4.3 leitet er OpenGL-Einstellungen nach \, nicht mehr nach \OpenGL\. Die CP-Settings sind unverändert. Läuft aTuner prinzipiell, nur halt nicht synchron mit dem CP, oder gibt es Fehlermeldungen?
BlueSteel
2004-03-11, 17:19:44
Scheint soweit zu funktionieren, die OpenGL-Settings werden gesetzt und funktionieren auch im Spiel. D3D hatte ja auch vorher schon bis auf's CP funktioniert.
Ist halt alles nicht mehr CP-synchron, aber ansonsten klappt der aTuner wieder wie gewünscht. Fehlermeldungen kamen übrigens die ganze Zeit keine, auch nicht im Log.
Danke daß Du das noch schnell gemacht hast! :D
-BlueSteel
Ok, die Version ist dann vorläufig auch offiziell. Immer dieser Stress …
Danke für deine Beschreibung.
Wohin schreibt er denn jetzt nun die CP-Settings?
BlueSteel
2004-03-13, 23:46:56
Wenn ich nicht irre schreibt der einfach alles in den oben genannten Key.
Wenns keine Umstände macht erweiter den Hack doch einfach mal insofern daß ab Cat 4.3 einfach alles in diesen Key umgeleitet wird, und ich teste schnell durch ob so alles funktioniert. Sollte eigentlich klappen...
-BlueSteel
Original geschrieben von BlueSteel
Wenn ich nicht irre schreibt der einfach alles in den oben genannten Key.
Wenns keine Umstände macht erweiter den Hack doch einfachWieso "Hack"?? :kratz:
Folgende Zeilen sind jetzt zusätzlich:
s:=readregstring(genregkey,'Catalyst_Version');
s2:=copy(s,1,whereis(s,'.')-1);
s3:=copy(s,whereis(s,'.')+1,99);
a:=strtoint(s2);
b:=strtoint(s3);
if (a>=4) and (b>=3) then cat43:=true else cat43:=false;
zur Cat-Erkennung. Dann die "Umleitung" von den OpenGL-Entrys:
ogl:='\OpenGL\';
if cat43 then ogl:='\';Und nun kam eben noch rein:
if cat43 then genaticpregkey:=genregkey;Da wird nichts "gehackt", das wird sauber entsprechend dem aTuner-Design programmiert. Der aTuner ansich funzt ganz normal, ohne Änderung, lediglich nach dem Start, beim Ausfüllen der ComboBoxen und der Registry-Daten-Structures berücksichtigt er die Besonderheiten für Cat 4.3.
Klar, dass der User so schnell wie möglich das Tool wieder lauffähig haben will. Aber mit "Hacks" fange ich gar nicht erst an, das heißt, in die Haupt-"Engine" wird nicht eingegriffen, indem vielleicht Key-Strings umgebogen werden oder so. Die im Hintergrund stehende Structure ist darauf ausgelegt, im HKLM-Pfad praktisch überall hinkommen zu können, und unterstützt alle Typen. Beispielsweise proggte ich die Unterstützung für Reg_SZ, obwohl GeForce das gar nicht braucht. Als ich aTuner für Radeon erweiterte, war die SZ-Unterstützung fast komplett da (es fehlte noch in der Write-Methode eine bestimmte Abfrage und allgemeine eine bestimmte Leseroutine.)
Dass OpenGL-Settings und D3D-Settings in Subkeys stehen können, ist längst bedacht. Für das CP musste allerdings eine neue Keyvariable eingeführt werden. Die kann nun einfach auf den allgemeinen Key gesetzt werden. aTuner verwaltet eine Daten-Structure, die enthält für jedes Entry den Datentyp, den Hauptkey, und einen möglichen Subkey. Angesprochen werden die Entrys dann nur noch über ihre Indizes.
Es wäre möglich, direkt vor dem Schreiben den Zugriff abzufangen, auf Cat 4.3 zu testen, und den Key-String zu ändern. Aber dieser Stil führt einen mittelfristig in Teufels Küche.
Original geschrieben von BlueSteel
mal insofern daß ab Cat 4.3 einfach alles in diesen Key umgeleitet wird, und ich teste schnell durch ob so alles funktioniert. Sollte eigentlich klappen...Funzt. Fast. Ein Entry ("AnisoType") was er zur CP-Synchronisierung schreibt, scheint den falschen Typ zu haben. Das musste ich jetzt explizit noch mal auf String ("Reg_SZ") setzen. Eigentlich hätte er schon in Cat < 4.3 deswegen rumheulen müssen. Komisch. Bitte die aktuelle offizielle Version mal testen.
BlueSteel
2004-03-14, 01:02:08
Sieht gut aus! Klappt soweit alles was ich getestet hab.
Sorry daß ich das mit dem "Notupdate" mißverstanden hab, da Du ja gesagt hast Du hättest wenig Zeit war ich davon ausgegangen daß Du irgendwie abgekürzt hast.
Naja, so hab ich wenigstens mal etwas Einblick in den Code bekommen ;)
Jetzt fehlen eigentlich nur noch 2 Dinge, einmal das Gamma- und Color-FX-Problem ab Cat 4.2 und dann noch das neue D3D-Apply (ohne Blackscreen). Aber da fehlen ja noch die Hintergrundinfos...
Ich werd mal eine PM an den CatalystMaker im DriverHeaven-Forum schreiben, vielleicht kann der ja was dazu sagen.
Wie machst Du eigentlich momentan den Apply? Änderst Du einfach kurzzeitig Auflösung bzw. Refreshrate?
-BlueSteel
Original geschrieben von BlueSteel
Jetzt fehlen eigentlich nur noch 2 Dinge, einmal das Gamma- und Color-FX-Problem ab Cat 4.2 Das ist ATIs Problem. Ich kann höchstens versionabhängig den Button bzw. die Slider disablen.
Original geschrieben von BlueSteel
und dann noch das neue D3D-Apply (ohne Blackscreen). Aber da fehlen ja noch die Hintergrundinfos... Allerdings. Irgendwas muss er noch machen. Ansonsten übernimmt er bei mir die Werte nicht.
Original geschrieben von BlueSteel
Wie machst Du eigentlich momentan den Apply? Änderst Du einfach kurzzeitig Auflösung bzw. Refreshrate?Nein, die Farbtiefe. Er testet, ob er in 16 Bit oder in 24/32 Bit Farbtiefe ist. Dann schaltet er je nach dem um, und gleich wieder zurück.
BlueSteel
2004-03-14, 01:17:55
Beim aktuellen ATi-Apply wird zwar nichts in der Form geändert daß der Monitor schwarz würde, aber irgendwas tut sich da schon. Das Bild wird für grob 1,5 nicht aktualisiert und anschließend werden einzelne Fenster refreshed. Die CPU-Auslastung ist in dem Moment auf 100%.
Möglich daß da sowas in der Art wie der VPU-Recover ausgelöst wird (wobei ich absolut keine Ahnung hab was der im Einzelnen macht...). Ich vermute jedenfalls daß man, um das zu reproduzieren, irgendeine Funktion im Treiber triggern muß...keine Ahnung ob das so einfach zu machen ist.
-BlueSteel
Original geschrieben von BlueSteel
Beim aktuellen ATi-Apply wird zwar nichts in der Form geändert daß der Monitor schwarz würde, aber irgendwas tut sich da schon. Das Bild wird für grob 1,5 nicht aktualisiert und anschließend werden einzelne Fenster refreshed.Du meinst, "refresht" :)
Original geschrieben von BlueSteel
Möglich daß da sowas in der Art wie der VPU-Recover ausgelöst wird (wobei ich absolut keine Ahnung hab was der im Einzelnen macht...). Ich vermute jedenfalls daß man, um das zu reproduzieren, irgendeine Funktion im Treiber triggern muß...keine Ahnung ob das so einfach zu machen ist.Ich wüsste jedenfalls nicht wie.
vBulletin®, Copyright ©2000-2024, Jelsoft Enterprises Ltd.