2011-04-18 78 views
3

我有一个DisplayObject(让它是一个Sprite)。Actionscript 3:DisplayObject下的颜色效果

我需要的是使它下面的内容黑白(只在其边界内)。有什么建议么?

谢谢。

+1

写一个像素弯曲过滤器来做到这一点。 :) http://gotoandlearn.com/play.php?id=83 – 2011-04-18 12:26:07

回答

2

你可以抓住它下面的舞台,剪裁到你想要使用的精灵的矩形,将位图(使用colormatrixfilter或@chris的答案中的补间代码)去色并作为背景在精灵内部使用addChildAt(bitmap, 0)

然后,希望下面的东西没有改变,因为那样你就不得不再次把这些改变反映到黑白背景中。

我还没有尝试过,但它可能会工作。

+0

截取的位图,使用ColorMatrixFilter,添加了Bitmap =>正常工作,谢谢! :) – 2011-04-19 09:11:40

0

下载TweenMax(我个人认为Flash的最佳补间平台)。

http://www.greensock.com/tweenmax/

然后,所有你需要做的就是导入并添加以下内容:

import com.greensock.*; 
import com.greensock.easing.*; 

TweenMax.to(mc, 1, {colorMatrixFilter:{colorize:0x000000, amount:0.5, saturation:0}}); 

,这将改变MC黑白色超过1秒的过程中,你当然可以将其更改为0即时黑色和白色。

+0

去尝试,thx – 2011-04-18 11:41:54

+0

它的工作原理,但它不完全是我所需要的......我需要在我的精灵之下做出黑白的一切 – 2011-04-18 12:12:42