2010-02-09 6 views
4

Je cherchais un moyen simple d'inverser un masque en flash. C'est juste incroyable comment il n'a pas cette fonctionnalité.Masque flash inversé

J'ai juste vraiment besoin de peindre la forme et tout ce qui est en dessous (en couches) n'apparaîtra pas.

Des suggestions?

Répondre

5

Pour créer un masque inversé dans le code, procédez comme suit

private function createInvertedMask(mcToBeMasked:MovieClip):void { 

     mcToBeMasked.blendMode = BlendMode.LAYER; 
     var invertedMask:Sprite = new Sprite(); 
     invertedMask.graphics.beginFill(0x0, 1); 
     invertedMask.graphics.drawRect(640, 395, 630, 395); 
     invertedMask.blendMode = BlendMode.ERASE; 
     mcToBeMasked.addChild(invertedMask); 
    } 

Pour créer un masque inversé dans l'IDE Flash Professional Choisissez le panneau de propriétés de l'image que vous voulez masquée, sélectionnez « Affichage » -> " mélangeant « -> « couche » puis sélectionnez votre masque, et choisissez » Affichage -> « Blending » -> « Effacer » Vous verrez quelque chose comme ceci: enter image description here

1

NOTE: Rappelez-vous que cela fonctionne à l'intérieur un clip (c'est-à-dire que vous avez créé un clip inversé clip animé de masque qui va s'effacer, etc); le clip dans lequel il est intégré DOIT ÊTRE RÉGLÉ EN BLENDMODE: COUCHE ÉGALEMENT sinon l'effet global sera ignoré - espérons que cela aide!