buffering

Status
Nicht offen für weitere Antworten.
J

JaVa

Gast
Hi!

Ich beschäftige mich gerade mit Grafik unter Java (applets). Möchte vielleicht ein Pong game programmieren!
Bisher habe ich ein Bildchen, das der Spieler nach oben und unten steuern kann. Extrem primitive Kollisionsabfrage habe ich auch schon eingebaut. Jetzt habe ich das Problem, dass das Bild extrem flimmert. Ich habe da was von buffering gehört, womit man eine Reibungslose Grafikdarstellung erhält!
Naja, genug geredet, damit man sich das besser vorstellen kann hier der quellcode:

Code:
import java.awt.*;
import java.applet.*;

public class SampleThread extends Applet implements Runnable 
{
	Thread t;
    //int i;
    int x;
    int y;
    
    Image PCpaddle;
    //Graphics offscreen;
 
	
	public void init()
	{
		t = new Thread(this);
		//offscreen = PCpaddle.getGraphics();
		t.start();
		
		//i = 0;
		x = 0;
		y = 0;
		
		PCpaddle = getImage(getCodeBase(), "paddlePC.GIF");
	}
	
	
	public void run()
	{
		while(true)
		{
			//i++;
			
			repaint();
			
			if(y > 210)
			{
				//y = y-1;
				y = 210;
			}
			
			if(y < 0)
			{
				//y = y+1;
				y = 0;
			}
			
			
			try
			{
				t.sleep(9);
			}	
			catch (InterruptedException e)
			{
			}	
		}
	}
	
	
	public void paint(Graphics g)
    {
      //g.drawString("i = "+i, 10, 20);
      
      g.drawImage(PCpaddle, x, y, this);
    }
    
    
    public boolean keyDown(Event e, int key)
    {
      if(key == 1005)
      {
      	y = y+2;
      }
      if(key == 1004)
      {
      	y = y-2;
      }
	  
      return true;
    }

}

Anmerkung: Ich habe Teile vom Quelltext auskommentiert, bitte nicht beachten. Ist nicht gerade von Sinn!
Also: wer mir erklären kann wie ich dieses Flimmern wegbekomme, der darf das sehr gerne tun! ;-)

Grüße JaVa
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben