AS3 - "Radieren" in Sprites

DarkRage

Grünschnabel
Hey,

hab schon einige Programmiererfahrung, hab mit AS3 aber frisch angefangen. Ich hab ein dynamisch erstelltes Sprite. Sagen wir Beispielhaft, 3 Kreise die irgendwo auf der Stage verteilt sind.

Dahinter liegt ein Bild als Hintergrund.

Mit einem Mausklick, zeichne ich an der Stelle des Mauscursors einen Kreis auf ein weiteres Sprite, dass als Maske für das erste Sprite gilt.

Was ich damit erzielen wollte, war, etwas von den Kreisen quasi wegradieren zu können. Dahinter muss dann der Hintergrund wieder zu sehen sein.

Es klappt alles, aber nur genau falsch herum, d.h. ich schaffe es nur, zu "malen" / addieren, nicht aber, zu entfernen.

Ich finde es ohnehin komisch, dass die Maske nur mit "Pixel zeigen oder nicht zeigen" funktioniert. Ich dachte, schwarz wäre transparent und weiß wäre undurchsichtig - aber da habe ich mich getäuscht.

Lässt sich die Maske irgendwie so modifizieren, dass nur weiße Pixel als "Anzeigebereich" fungieren? Oder lässt sich direkt am Sprite "radieren", also so wie drawCircle - bloß als Radierer.

Freue mich über alle Denkanstöße...
 
Hallo und willkommen,

dein Problem ist logischer Art. Du benötigst 3 übereinanderliegende Sprites (von unten nach oben:

- Hintergrund
- Kreisgrafik
- Hintergrund mit Maske, Maske ist leer.

Nun zeichnest du deine Kreise in die Hintergrund-Maske, so dass sich der obere Hintergrund an den maskierten Stellen wieder über die Kreisgrafik legt.

Gruss
 
Hallo luke,

das sehe ich etwas anders.. Meine Frage war, wie ich von einem einzelnen Sprite etwas wieder löschen kann / so maskieren kann, dass etwas nachträglich wieder ausgeblendet wird.
Es ging dabei nicht um ein Pseudoradieren.

Ich habe das ganze selbst realisiert (BitmapData). In ein Sprite zeichne ich mir meine Maske, zB einen Kreis, und dort wo ich dieses Sprite setzen würde, werden alle Überschneidungspixel auf der HauptBitmapData einfach transparent gesetzt.

Hier die Praxisanwendung, bei jedem Neustart wird die Karte komplett dynamisch neu berechnet, blabla, einfach ausprobieren ;) :
http://www.computerpannen.com/putfiles/flash/realworld/LandScapeFlex.html

(noch lange nicht fertig)
 
Zuletzt bearbeitet:
Zurück