Impressum · Kontakt · Hilfe
Besucher online · Mitglieder



Portal > Foren > Java > Desktop-Applikationen und Grafik > langsame animation mit hintgergrundbild
Antwort
 
Themen-Optionen
Alt 05.08.2004, 17:17   Nach oben    #1
Fridolin
Gast
 
Beiträge: n/a
Standard langsame animation mit hintgergrundbild

Hallo,
ich habe eine Frage zu Swing programmen mit grafik. Wenn man zum Beispiel eine Applikation mit einem hintergrund aus drei farben hat, jede farbe nimmt einen bekannten
platz als farbiges rechteck ein. Wenn ich jetzt eine animation machen will muss ich den gesamten hintergrund löschen und neuzeichnen um die änderung der animation darzustellen und diese schlieren die das bild zieht zu vermeiden. Was zwar leicht zu machen ist bei meinem simplen hintergrund aus drei Farben doch die geschwindigkeit etwas beeinflusst mit der die animation dargestellt wird. Nun hab ich eine Frage
Soll ich die Stellen die neugezeichnet werden müssen einfach nur mit der richtigen farbe übermalen (das wäre dann ein andersfarbiges rechteck um 2 pixel verschoben) oder
soll ich jedesmal wenn sich was bewegt den bildschirm löschen alles neuzeichnen inklusive der änderung und das bild dann im vordergrung anzeigen? Gibt es da noch eine andere Methode? Mittlerweile bin ich bei 10ms im Thread wo die repaint schleife
aufgerufen wird aber schneller wirds nimmer. Vielleicht muss man das mit Offscreen
images machen aber wenn ich mir ein BufferedImage und seinen Grafikkontext mit createGraphics besorge und dann die Doppel Pufferung darauf anwende ist das image
nach jedem repaint leer und muss nochmal neu gezeichnet werden bevor es mit drawImage schließlich angezeigt werden kann (Klar wegen der Änderung), aber das dauert zu lange. Wie gesagt es ist deutlich langsamer geworden seitdem ich alles neuzeichne und über eine bestimmte geschwindigkeit komm ich dann nicht mehr hinaus
ich will aber das es so schnell ist wie vorher.

lg Fridolin
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.08.2004, 20:35   Nach oben    #2
bischi
Neuer Benutzer
 
Registriert seit: 27.05.2004
Beiträge: 25
Standard

Ich glaube, Doppelbufferung ist dein Freund. Mehr dazu im Swing-Multimedia-Tutorial auf meiner HP (www.walfisch.ch.vu unter Tutorials)

MfG Bischi
bischi ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.05.2005, 16:28   Nach oben    #3
alekz
Benutzer
 
Registriert seit: 25.10.2004
Beiträge: 38
Standard

warum nennst du das eigentlich "doppelbufferung" ???

das bild wird doch nur (in deinem tut) in einem einzigen Puffer vorgezeichnet, und anschließend dargestellt!!! Also wo ist da der zeite Puffer ???


mfg, alekz
alekz ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.05.2005, 17:12   Nach oben    #4
Soulfly
Gast
 
Beiträge: n/a
Standard

DoubleBuffering wird es deswegen genannt, weil du 2 Malflächen hast.
Bildschirm und Puffer.
Ohne DoubleBuffering hast du nur den Bildschirm. Immer wenn du diesem neu zeichnest wird der Bildschirm gelöscht und alles wird neu gezeichnet. Dabei entsteht das Flackern.

Bei DoubleBuffering werden alle Zeichnung erst auf den Puffer gemalt und wenn alles fertig auf dem Bildschirm übertragen. Also brauch der Bildschirm nicht gelöscht werden und es ensteht kein Flackern.

Eigentlich ganz einfach.

mfg Soulfly
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are Aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Flackern nach animation....JVM zu beschäftigt? maxpower24 Desktop-Applikationen und Grafik 3 15.10.2004 14:59


Alle Zeitangaben in WEZ +2. Es ist jetzt 06:17 Uhr.

Nach oben
Wir nutzen das Zend Framework, vBulletin (vBulletin v3.7.2, Copyright ©2000-2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.0.0) und vBSEO.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44