K
Knecht Purpecht
Gast
Hallo,
ich bin zur Zeit gezwungen, mich ein wenig mit dem Java2D-Kram zu beschäftigen. Dabei muss ich auf ein BufferedImage sehr viele Primitiven (Linien, Kreise etc.) in möglichst kurzer Zeit zeichnen. Allerdings findet das Zeichnen (soweit ich weiß) per Prozessor statt und ist somit vergleichsweise langsam. Nach kurzem Suchmaschinen habe ich herausgefunden, dass man das Ganze (mit der Sun / Oracle VM) wohl auch mit Hardwareunterstützung (über OpenGL) zeichnen könnte - was mir sehr entgegen käme, da das doch sehr viel schneller gehen sollte. Der entsprechende Schalter für die Java-VM ist -Dsun.java2d.opengl=true (setzt natürlich auch die Sun / Oracle VM voraus).
Dabei tritt jedoch ein Problem auf:
Ich sehe nichts mehr. Es wird lediglich der Fensterrahmen meiner Swing-Anwendung gezeichnet und sonst nichts - Der Inhalt des Fensters ist dann der letzte Bildinhalt vor Starten der Anwendung. Beim Starten der Anwendung wird auch noch gar nicht mit BufferedImages gearbeitet, das geschieht erst nach Betätigen eines Buttons. Schon alleine deswegen irritiert mich das Ganze ein wenig, da zum Zeitpunkt des Startens im Grunde die HW-Unterstützung noch gar nicht stattfindet (stattfinden muss).
Zu dem Problem habe ich leider auch nichts weiter finden können, ich weiß auch gar nicht, ob der Schalter überhaupt noch aktuell ist oder andere Einschränkungen gelten. Vielleicht kann mir ja jemand weiter helfen.
ich bin zur Zeit gezwungen, mich ein wenig mit dem Java2D-Kram zu beschäftigen. Dabei muss ich auf ein BufferedImage sehr viele Primitiven (Linien, Kreise etc.) in möglichst kurzer Zeit zeichnen. Allerdings findet das Zeichnen (soweit ich weiß) per Prozessor statt und ist somit vergleichsweise langsam. Nach kurzem Suchmaschinen habe ich herausgefunden, dass man das Ganze (mit der Sun / Oracle VM) wohl auch mit Hardwareunterstützung (über OpenGL) zeichnen könnte - was mir sehr entgegen käme, da das doch sehr viel schneller gehen sollte. Der entsprechende Schalter für die Java-VM ist -Dsun.java2d.opengl=true (setzt natürlich auch die Sun / Oracle VM voraus).
Dabei tritt jedoch ein Problem auf:
Ich sehe nichts mehr. Es wird lediglich der Fensterrahmen meiner Swing-Anwendung gezeichnet und sonst nichts - Der Inhalt des Fensters ist dann der letzte Bildinhalt vor Starten der Anwendung. Beim Starten der Anwendung wird auch noch gar nicht mit BufferedImages gearbeitet, das geschieht erst nach Betätigen eines Buttons. Schon alleine deswegen irritiert mich das Ganze ein wenig, da zum Zeitpunkt des Startens im Grunde die HW-Unterstützung noch gar nicht stattfindet (stattfinden muss).
Zu dem Problem habe ich leider auch nichts weiter finden können, ich weiß auch gar nicht, ob der Schalter überhaupt noch aktuell ist oder andere Einschränkungen gelten. Vielleicht kann mir ja jemand weiter helfen.