PNG Animation verwenden

BabyMitSchnully

Erfahrenes Mitglied
Hi Leute,

ich bin mir noch nicht mal sicher, ob ich hier im richtigen Forum bin, aber vielleicht kann mir ja wer helfen.

Zu Anfang muss ich sagen, dass ich mich mit Handyprogrammierung (J2ME) beschäftige. MIDlets. Nun habe ich folgendes Problem. Eine Animation zu erstellen mit dem Grafikprogramm GIMP bereitet mir keine Probleme. Doch möchte ich gerne eine Animation haben, welche Transparent ist.

Folgendes habe ich gemacht :

Programmierung.
Die Bilder werden in JAVA mit Hilfe der Klasse Sprite gespeichert. So kann ich die einzelnen Frames der PNG Datei nacheinander abspielen und beliebig nutzen.

Das Bild selber
Das Bild ist eine Person, welche ein Schritt simulieren soll. Es wurden 4 verschiedene Bilder gezeichnet um die Animation abzuspielen.


Leider kann ich die Animation nicht so abspielen lassen, wie ich möchte. Als Transparente Farbe habe ich Blau genommen (0,0,255).
Wenn jetzt das zweite Bild angezeigt wird, dann wird das erste wegen der Transparenz nicht abgedeckt. Doch die Transparenz benötige ich um das Hintergrundbild auf dem Handy nicht zu zerstören. Wenn ich die Farbe blau einfach lasse, dann funktioniert alles super, aber habe ich immer noch das Blaue da und es sieht nicht mehr echt aus.

Weiß da jemand eine Lösung

Gruß
Chris
 
Bevor du die Animation ausgibst, muss du das Hintergrundbild sichern. Die Einzelbilder der Animation schreibst du nicht direkt auf den Screen, sondern in einen entsprechenden Speicherbereich. In dem legst du erst das gesicherte, saubere Hintergrundbild ab und zeichnest dann das jeweilige Animationsbild darüber. Anschließend kopierst du den Speicherbereich auf den Handy-Screen.
Wie du das am besten in Java implementieren kannst, kann ich dir allerdings nicht sagen. Mit Java werkle ich nur sehr, sehr selten :)

Gruß
MCoder
 
Hi,

der Ansatz ist gut. Und so würde ich es auch machen, wenn ich nicht das Format PNG benutzen könnte ;-)

Die einzelbilder werden ja schon gehandeld. Der Hintergrund bleibt auch. Nur wenn das Bild 2 des PNGs über das erste Gelegt wird, dann wird die erste Ebene nicht unsichtbar gemacht, sondern bleibt sichtbar. Und genau das ist das Problem dabei.

Gruß
Chris
 
Und so würde ich es auch machen, wenn ich nicht das Format PNG benutzen könnte ;-)
Das Format hat mit dem Problem eigentlich nichts zu tun, das vereinfacht dir nur die Kombination mit dem Hintergrund.

Was ich meine ist, dass du JEDES Bild der Animation auf einen "jungfräulichen" Hintergrund zeichnen musst. Also Hintergrund am Anfang sichern, die Animationsausgabe auf diesen Hintergrund irgendwo im Speicher erledigen und dann das Ergebnis auf den Handyschirm bringen.

Gruß
MCoder
 
Zurück