i created a movieclip and draw a simple shape with brush in some colors casually.
then i tread this movieclip be the mask of another movieclip
however,weird things happened after running in flashplayer.
is that a bug? or is there any way to make things just be normal as it viewed in stage?
the painting area filled with the transparent color in mask shape also be ignored when flash player runing,i think that's also not correct
Thanks for your attentions and replies
What version of flash and what OS?
What version of Flash Player are you exporting for?
No that's not standard mask behavior. Do you have any code running that might be affecting the clip you're using as a mask?
hi,sinious.thanks for your reply
it's flash pro cs6 running in win7 x64
and the flashplayer verison is the default document setting version 11.2
no codes in there
just 2 simple MCs and 2 simple layers like snapshot viewed
all is the default setting.i just create a blank fla doc,then did the things above
should i enable the cacheAsBitmap or not
what about GPU acceleration should i enable it or not?
well after i switch the cacheAsBitmap and the gpu acceleration settings,nothing changed
Here's a quick reproduction. A screenshot of this post pasted into a layer, converted to a MovieClip with cacheAsBitmap enabled.I made a layer above and drew a simple (red) bruch stroke combo. I selected all the separate brush objects, broke them (CTRL+B) and created a single MovieClip from them. I enabled cacheAsBitmap on there.
Stage with the stroke not applied (mask layer unlocked) for reference:
Check the lock on the mask layer to enable it in IDE:
Publish to FP11.2 as you're using, stage behind in IDE and FP in front:
I didn't even toggle any hardware acceleration mode.
You can see the brush marks work just fine to mask out the content on 11.2 (I'm using Flash CS5.5 however).
In your circumstance can you try opening a new document, importing that image, then as I did just add a new layer above and draw some brush strokes. Convert that layer to a mask. Combine the mask strokes (select them all, break (CTRL+B), make a MovieClip (F8)) and then enable cacheAsBitmap. See if you get the same results.
Flash doesn't seem to like the mask you've supplied. I'm trying to simplify it to isolate if it's the graphic being masked or the mask itself.
Verified bug. The only half functional workaround is to select the whole mask and turn it one color. You can always draw your mask using lots of colors to help you but ultimately when it comes time to mask, duplicate your colorful mask, change it to one color and it'll "almost" work, shown in the last picture below.
Just verifying here though (lots of pics), it's not just using other colors, it's when they intersect with each other.
Using (stealing) Adobe's front page image, here's a multi color mask:
Here's that applied (mask layer lock) and in FP 11.2 (11.5 does the same), this works fine (no intersection):
In comes the problem (FP 10.2-11.5), crisscrossing a color so all colors now intersect each other:
And the broken result is the same as yours, fine in the IDE, messed up in Flash Player:
Select the mask data and turn it all black for the unideal partially functional workaround. Notice the bottom right however. The majority of it works but on the bottom right you can clearly see it adding invalid data. So only a partial fix but perhaps for a fairly uncomplicated mask it may work for now until the bug is fixed.
I found somewhat of a similar bug with example code to reproduce but it's more of a general masking failure. Being it wasn't 100% related I opened a new bug report as I cannot find any bug reports for this in 10.3, 11.2 or 11.5. Attached is this (really ugly) example but that gets bugs fixed quicker when engineers don't need to struggle to test.