Hallo,
ich arbeite gerade ein Tutorial zur SpieleProgirammierung in Java durch und hänge nun seit Stunden an einem für mich unerklärlichen Problem ... laut Tutorial sollte das so funktionieren, tut es aber nicht ...
Meine PaintComponent Methode wird niemals aufgerufen, bzw. es wird nichts gezeichnet, und ich verstehe nich warum er da nicht reinspringt, wäre toll wenn mir jemand helfen könnte...:
Vielen Dank
Gruß Penta
ich arbeite gerade ein Tutorial zur SpieleProgirammierung in Java durch und hänge nun seit Stunden an einem für mich unerklärlichen Problem ... laut Tutorial sollte das so funktionieren, tut es aber nicht ...
Meine PaintComponent Methode wird niemals aufgerufen, bzw. es wird nichts gezeichnet, und ich verstehe nich warum er da nicht reinspringt, wäre toll wenn mir jemand helfen könnte...:
Java:
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class GamePanel extends JPanel implements Runnable {
boolean game_running = true;
long delta, fps, last = 0;
public static void main(String[] args) {
GamePanel gameView = new GamePanel(800, 600);
}
public GamePanel(int w, int h)
{
this.setPreferredSize(new Dimension(800,600));
JFrame frame = new JFrame();
frame.setLocation(100,50);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(this);
frame.pack();
frame.setVisible(true);
doInit();
}
public void doInit()
{
Thread t = new Thread(this);
t.start();
}
@Override
public void run() {
while (game_running)
{
computeDelta();
repaint();
try
{
Thread.sleep(10);
} catch (InterruptedException e){}
}
}
public void computeDelta()
{
delta = System.nanoTime() - last;
last = System.nanoTime();
fps = ((long) 1e9) / delta;
}
public void paintCompontent(Graphics g)
{
super.paintComponent(g);
g.setColor(Color.red);
g.drawString("FPS: " + Long.toString(fps), 30, 30);
}
}
Vielen Dank
Gruß Penta