FlashIDE色彩效果面板的秘密
美术喜欢调整MC(MovieClip)的属性面板里的色彩效果选项来修改MC的效果.其实Flash IDE里色彩效果面板的所有调整都可以通过 ColorTransform 类实现同样的效果.这样我们就能动态显示美术调好的效果。
首先我们可以看到样式里有5个选项:
- 无:显示原始效果
- 亮度:方便的调整亮度
- 色调:除Alpha以外的其它颜色通道的混合
- 高级:任意颜色通道的混合
- Alpha:调整透明度
先来看看这些选项对应的代码为:
样式:无
这个是最简单的不写或者用一个空的ColorTransform
就行
mc.transform.ColorTransform = new ColorTransform();
样式:亮度
注意面板上面数值后面有个百分号(%)表示写入的值要除以100才是下面代码输入的值。
var luminance:Number; // 亮度值,区间[-1, 1] var multiplier:Number = 1 - Math.abs(luminance); var offset:Number = luminance > 0 ? luminance * 255 : 0; new ColorTransform(multiplier, multiplier, multiplier, 1, offset, offset, offset);
样式:色调
注意面板上面数值后面有个百分号(%)。。
var tone:Number; // 色调值,区间[0, 1] var red:int; // 红色,区间[0, 255] var green:int; // 绿色,区间[0, 255] var blue:int; // 蓝色,区间[0, 255] var multiplier:Number = 1 - tone; var redOffset:Number = tone * red; var greenOffset:Number = tone * green; var blueOffset:Number = tone * blue; new ColorTransform(multiplier, multiplier, multiplier, 1, redOffset, greenOffset, blueOffset);
样式:高级
和色调面板一样,依然要注意数值后的百分号(%)。
高级这个最简单了,所有的值都带入ColorTransform的参数里就行了。
new ColorTransform(redMultiplier, greenMultiplier, blueMultiplier, alphaMultiplier, redOffset, greenOffset, blueOffset, alphaOffset);
样式:Alpha
和前面两个面板一样,最后再提醒一次,注意数值后的百分号(%)。
只需调节alphaMultiplier参数。
new ColorTransform(1, 1, 1, alphaMultiplier);
当然也可以使用 DisplayObject.alpha
属性来设置。
每一个选项都对应到不同的代码,如果感觉复杂,一时记不住这么多也没关系,只要先在色调或亮度选项里调整好数字,然后直接切换到高级选项里,这时高级选项里的参数就是刚刚调整好的参数,我们就好直接对应的ColorTransform的各个属性了。看了这里可以想到,原来ColorTransform类就是为色彩面板而生的啊。
» 转载请注明来源:www.litefeel.com » 《FlashIDE色彩效果面板的秘密》
» 本文链接地址:https://www.litefeel.com/color-transform/
» 订阅本站:www.litefeel.com/feed/
» Host on Linode VPS
» 本文链接地址:https://www.litefeel.com/color-transform/
» 订阅本站:www.litefeel.com/feed/
» Host on Linode VPS