# Seltsames Flackern bei Laden von Grafiken



## Marmorkuchen (1. Mrz 2006)

Hallo !

Einen kleinen Schönheitsfehler muss ich in meinem Spiel noch ausbügeln. Die ganze Sache läuft schön ohne Flackern (da DoubleBuffering). Doch wenn ich meine .png's ins Spiel lade und diese *zum ersten mal * in meinem Canvas gezeichnet werden flackert der Bildschirm einmal pro geladenes Bild weißgrau auf.

Ich hab alles versucht - wartende Threads, MediaTrackers und andere Tricks aber ich werde dieses hässliche Flackern beim Laden nicht los. Ich nehme an, dass es da irgendwelche Unreinheiten mit der Speicherverwaltung gibt. Das ist so ein Bereich wo ich am wenigsten Ahnung von besitze - Kann mir da jemand helfen ?

Danke !

grüße,
Mammo


----------



## Sky (1. Mrz 2006)

Wie läd's Du das Bild ?

Mittelst ImageIO ?? (Falls nicht, versuch's mal)


----------



## Marmorkuchen (2. Mrz 2006)

Sky hat gesagt.:
			
		

> Wie läd's Du das Bild ?
> 
> Mittelst ImageIO ?? (Falls nicht, versuch's mal)



Hab alle Bilder über das Toolkit geladen. Jetzt habe ich es mal mittels ImageIO, wie du gesagt hast, versucht. Das Flackern ist soweit ich es beurteilen kann weg, aber jetzt läuft alles schrecklich langsam.. woran kann das liegen ?


----------



## Ataraxie (3. Mrz 2006)

Versuchs mal mit "Doubble Buffering", hier ein Link dazu.
http://javacooperation.gmxhome.de/BildschirmflackernDeu.html
Ich hatte dieses Flackern bevor ich das doubble Buffering benutzt hab auch.

MfG

Ataraxie


----------



## Marmorkuchen (4. Mrz 2006)

Marmorkuchen hat gesagt.:
			
		

> Hallo !
> 
> Einen kleinen Schönheitsfehler muss ich in meinem Spiel noch ausbügeln. Die ganze Sache läuft schön ohne Flackern (da *DoubleBuffering*). Doch wenn ich meine .png's ins Spiel lade und diese *zum ersten mal * in meinem Canvas gezeichnet werden flackert der Bildschirm einmal pro geladenes Bild weißgrau auf.



hehe 

Aber Danke ich habs schon mit einem Trick geschafft. Wie gesagt: ImageIO hat die ganze Sache schrecklich langsam ins Stocken gebracht, also habe ich nochmal alles mit dem Toolkit gemacht, wieder mit einem MediaTracker ausgestattet der immer schön auf die Bilder warten soll. Dann zeichne ich die Grafiken alle, vor dem eigentlichem Spiel irgendwo bei -2000, -2000 (ImageObserver = Null - ich habe das Gefühl dass es auch noch was damit auf sich hat, das werde ich gleich mal überprüfen) 

Bis auf ein kleines anfängliches Flackern ist jetzt komplett alles beim laden weg. Die Szenen wechseln wunderbar ohne irgendwelche störenden effekte. Vielleicht etwas "dreckiger" Code aber ich habe auch wirklich 0 Ahung was Java mit meinem Grafikspeicher macht


----------

