S
SE
Java D3D und ATI CCC2 [UPDATE]
Da ich mich nicht entscheiden konnte ob ichs ins HW-Forum poste oder hier hab ich nachgedacht welchen Bereicht es eher betrifft und habe mich dann entschlossen es doch hier zu posten.
Worum es geht :
Schwere grafische Darstellungsfehler in Java-Fenstern und -Dialogen in Verbindung mit ATI-Treiber v11 und CCC2.
Ich weis nicht wehr von euch dieses Problem kennt ... allerdings äußert es sich bei mir folgendermaßen das Fenster und Dialoge in Java plötzlich schwarz werden und sich nur noch sehr eingeschränkt nutzen lassen können. Nach einiger Suche bin ich dann auf immer mehr Threads gestoßen welche ein änliches Problem behandeln. Was jetzt aber wirklich erschreckend ist : dieser Fehler tritt nur bei ATI-Karten auf, und auch nur dann wenn ein Treiber der Version 11.x in Verbindung mit der Treiber-Steuersoftware ATI Catalyst Control Center 2 *kurz CCC2* verwendet wird. Erst dachte ich das es daran liegt das ich manuell die 3D-Optionen etwas angezogen habe. Nach dem ich aber alle Werte auf "von Anwendung gesteuert" gesetzt habe trat der Fehler weiterhin auf. Auch ein schlichtes "killen" des CCC2 über den Taskmanager half nicht. Erst ein Deinstallieren des CCC2 mit anschließendem ReBoot brachte Abhilfe. Viele User berichteten auch das es mit Treibern der Version 10.x in dem nur das CCC1 enthalten ist ebenfalls keine Probleme gibt.
Lösung :
Um nicht auf Performance in anderen Anwendungen *gerade Spiele* verzichten zu müssen und trotzdem Java fehlerfrei arbeiten zu lassen kann man mit dem CMD-Parameter
das 3D-Rendering in Java komplett abschalten.
Ein Umschaltung auf OpenGL mit dem Parameter
hilft nur in manchen Fällen.
Ins besondere störend ist es da auch das JavaControlPanel in der Systemsteuerung und auch Applets in Browsern von diesem Problem betroffen sind. Ich habe es zwar unter Linux gesehen das man das JCP auch aus dem entsprechenden JAR starten kann ... jedoch ist das wirklich kompliziert und ich habe es unter Windows noch nicht hinbekommen. Selbst wenn man es dann mal schafft das das JCP halbwegs stabil läuft und man für Applets und WebStart diesen Parameter angibt hat das selbst nach einem ReBoot scheinbar keine Auswirkungen.
Meine Tests mit einer nVidia-Karte ergaben das dieser Fehler definitiv nur auf ATI-Karten auftritt. Und wie oben bereits erwähnt auch nur wenn das CCC2 installiert ist.
Die ersten Meldungen über dieses Problem traten zum Release der Treiberversion 10.12 *auch bekannt als 11.1 Beta* auf da dort erstmals das CCC der Version 2 verwendet wurde.
Da ich nun also eine Möglichkeit kenne um dieses Problem zumindest bei von der Console gestarteten Apps zu beheben wollte ich mal so eure Erfahrungen einholen.
Wie man den Fehler sehr einfach reproduzieren kann : Systemsteuerung > JavaControlPanel > und dann irgendein Dialog erzeugen *z.B. durch klick auf die Versions-Info oder dem Anzeigen des lokalen WebStart-Caches*.
Wenn jemand eine Lösung hat wie man mit der Auslieferung seiner App diees Problem umgehen kann ohne den User aufzufordern bestimmte Schritte und Einstellungen zu machen wäre ich sehr dankbar.
PS : Fehler tritt sowohl unter Java5.0 , Java6 als auch unter Java7-ea auf.
Da ich mich nicht entscheiden konnte ob ichs ins HW-Forum poste oder hier hab ich nachgedacht welchen Bereicht es eher betrifft und habe mich dann entschlossen es doch hier zu posten.
Worum es geht :
Schwere grafische Darstellungsfehler in Java-Fenstern und -Dialogen in Verbindung mit ATI-Treiber v11 und CCC2.
Ich weis nicht wehr von euch dieses Problem kennt ... allerdings äußert es sich bei mir folgendermaßen das Fenster und Dialoge in Java plötzlich schwarz werden und sich nur noch sehr eingeschränkt nutzen lassen können. Nach einiger Suche bin ich dann auf immer mehr Threads gestoßen welche ein änliches Problem behandeln. Was jetzt aber wirklich erschreckend ist : dieser Fehler tritt nur bei ATI-Karten auf, und auch nur dann wenn ein Treiber der Version 11.x in Verbindung mit der Treiber-Steuersoftware ATI Catalyst Control Center 2 *kurz CCC2* verwendet wird. Erst dachte ich das es daran liegt das ich manuell die 3D-Optionen etwas angezogen habe. Nach dem ich aber alle Werte auf "von Anwendung gesteuert" gesetzt habe trat der Fehler weiterhin auf. Auch ein schlichtes "killen" des CCC2 über den Taskmanager half nicht. Erst ein Deinstallieren des CCC2 mit anschließendem ReBoot brachte Abhilfe. Viele User berichteten auch das es mit Treibern der Version 10.x in dem nur das CCC1 enthalten ist ebenfalls keine Probleme gibt.
Lösung :
Um nicht auf Performance in anderen Anwendungen *gerade Spiele* verzichten zu müssen und trotzdem Java fehlerfrei arbeiten zu lassen kann man mit dem CMD-Parameter
Java:
-Dsun.java2d.d3d=false
Ein Umschaltung auf OpenGL mit dem Parameter
Java:
-Dsun.java2d.opengl=true
Ins besondere störend ist es da auch das JavaControlPanel in der Systemsteuerung und auch Applets in Browsern von diesem Problem betroffen sind. Ich habe es zwar unter Linux gesehen das man das JCP auch aus dem entsprechenden JAR starten kann ... jedoch ist das wirklich kompliziert und ich habe es unter Windows noch nicht hinbekommen. Selbst wenn man es dann mal schafft das das JCP halbwegs stabil läuft und man für Applets und WebStart diesen Parameter angibt hat das selbst nach einem ReBoot scheinbar keine Auswirkungen.
Meine Tests mit einer nVidia-Karte ergaben das dieser Fehler definitiv nur auf ATI-Karten auftritt. Und wie oben bereits erwähnt auch nur wenn das CCC2 installiert ist.
Die ersten Meldungen über dieses Problem traten zum Release der Treiberversion 10.12 *auch bekannt als 11.1 Beta* auf da dort erstmals das CCC der Version 2 verwendet wurde.
Da ich nun also eine Möglichkeit kenne um dieses Problem zumindest bei von der Console gestarteten Apps zu beheben wollte ich mal so eure Erfahrungen einholen.
Wie man den Fehler sehr einfach reproduzieren kann : Systemsteuerung > JavaControlPanel > und dann irgendein Dialog erzeugen *z.B. durch klick auf die Versions-Info oder dem Anzeigen des lokalen WebStart-Caches*.
Wenn jemand eine Lösung hat wie man mit der Auslieferung seiner App diees Problem umgehen kann ohne den User aufzufordern bestimmte Schritte und Einstellungen zu machen wäre ich sehr dankbar.
PS : Fehler tritt sowohl unter Java5.0 , Java6 als auch unter Java7-ea auf.
Zuletzt bearbeitet von einem Moderator: