Auf Thema antworten

Also, in dem angesprochenen Buch, finde ich nichts über ein Problem mit der Realization von JPanels gelesen;)


Ich glaube aber auch, das dein Code maximal von Swing und der JVM entkoppelt sein sollte.


Dies bedeutet, das du das JPanel "normal" erzeugen solltest und dann darauf anschliessend deinen GameLoop-Thread anwenden solltest.


Hier wird im Buch, zu Recht, angemerkt, das du dir den Graphics-Kontext jedesmal neu holen solltest, um nicht mit Swing/OS in Konflikt zu kommen.


In Pseudo-Code sieht das so aus:

[code=Java]    public void run() {

    running = true;

    while (running) {

        gameUpdate(); // game state is updated

        gameRender(); // render to a buffer

        paintScreen(); // draw buffer to screen

    }

    }

private void paintScreen( ) {

 Graphics g;

 try {

 g = this.getGraphics( ); // get the panel's graphic context

...

}[/code]



Oben