jDosBox JOGL OpenGL (GLG2D) implementieren

Hi,

ich versuche gerade GLG2D (benötigt JOGL) für OpenGL in jDosBox einzurichten.
Das ganze startet auch schon aber ich bekomme immer diesen “warning”:
libEGL warning: DRI2: failed to authenticate

Nach langem Googlen weis ich noch immer nicht was der Fehler genau bedeutet.
getestet unter: XUbuntu x64 und Arch Linux x64, beides mit Nvidia Treiber.
Der Nvidia Treiber könnte das Problem sein…

http://jdosbox.sourceforge.net/
http://brandonborkholder.github.io/glg2d/
http://jogamp.org/jogl/www/

Funktioniert es denn (trotz der Warnung)? Eine Direkte Websuche nach der Meldung liefert ja schon einige Ergebnisse, ein erstbestes http://www.chaosreigns.com/wayland/hardware/ sagt

“libEGL warning: DRI2: failed to authenticate” probably means either that you’re using an old version of mesa (wrong library path?) or don’t have DRI2 support in your X server. Both the nVidia and AMD/ATI proprietary drivers apparently lie about having DRI2 support.

Der Sinn und Zweck von diesem glg2d erschließt sich mir nicht ganz: Normalerweise kann das Graphics2D ja schon von Haus aus mit OpenGL rendern…!? Aber vielleicht kann man, wenn man WEISS dass NUR mit OpenGL gerendert werden muss, noch mehr Performance rausholen (zumindest klingt die Beschreibung ja erstmal so… ob er für seine Tests auf die Idee gekommen ist, mal mit -Dsun.java2d.opengl=true zu starten, weiß man aber nicht…)

Moment mal, heißt das also java2D unterstützt opengl ??

Naja: Wenn man mit -Dsun.java2d.opengl=true startet, dann wird (GANZ schwammig: ) “zum Zeichnen (auch?) OpenGL verwendet”. Was das im Detail heißt, bzw. WELCHE Zeichenfunktionen dann WIE an OpenGL weitergereich werden, weiß ich nicht (bzw. weiß man wohl nur, wenn man vieeeel im OpenJDK-Quellcode gewühlt hat). Ein bißchen was sagt er ja dazu auf der glg2d-Seite

The most recent versions of the Oracle JVM have an OpenGL pipeline to accelerate drawing on some platforms. But the pipeline doesn’t use the full power of OpenGL since it doesn’t make use of OpenGL’s ability to draw primitives directly, like glRectf*(). The Oracle implementation processes most of the Graphics2D calls in Java then sends very primitive commands to the OpenGL system. In addition, Oracle’s implementation is not very reliable and will not work on some platforms.

Aber in welchen Fällen man da noch wie viel Performance rausholen kann, ist wohl schwer zu sagen…

Mit der Option -Dsun.java2d.opengl=true wird z.b. jDosBox extrem langsam, mit anderen Java Programmen kann es sein das diese beschleunigt werden.
JOGL sorgt dafür das OpenGL nativ ausgeführt wird.

jDosBox mit GLG2D Renderer startet auch trotz der Warnung aber OpenGL wird nicht verwendet. Ich hab es auch unter Windows XP mit VirtualBox probiert,
es startet, aber mit vielen OpenGL warnings. Vermutlich ligt es daran das man unter VirtualBox keinen OpenGL Treiber für die Grafikkarte installieren kann.

Auch das Testprogramm (glmark2-es2) unter Linux gibt genau den selben Fehler (libEGL warning: DRI2: failed to authenticate) aus.
Ich bin mir ziemlich sicher das der Nvidia Treiber schuld ist, aber auch mit dem neuesten Treiber unter Arch Linux funzt es nicht.