# buffering



## JaVa (5. Aug 2004)

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:


```
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


----------



## Reality (5. Aug 2004)

Hier ein nettes Tutorial:

http://www.javacooperation.gmxhome.de/BildschirmflackernDeu.html

Liebe Grüße
Reality


----------



## L-ectron-X (5. Aug 2004)

Suchfunktion:
http://www.java-forum.org/de/viewtopic.php?t=5115
http://www.java-forum.org/de/viewtopic.php?p=24567


----------

