ActionScript3游戏中的图像编程(连载十三)
来源:互联网 发布:网络诈骗有哪些形式 编辑:程序博客网 时间:2024/09/21 06:38
总目录:http://blog.csdn.net/iloveas2014/article/details/38304477
1.2.9 用ColorTransform实现反色效果
本节的最后,我给大家来一个稍稍有点意思的效果——反色。这种颠覆性的变换,线性的ColorTransform也能做到?答案是肯定的!所谓的反色,就是白变黑,黑变白,浅变深,深变浅,它的计算公式也非常简单,用100%减去原值就能得到结果色。即
dst = 255 – src;
套到ColorTransform的计算公式中,就有:
red(dst) = red(src) * (-1) + 255。green(dst) = green(src) * (-1) + 255blue(dst) = blue(src) * (-1) + 255
换而言之,只要将offset都设为255,multiplier都设成-1即可(可能有的童鞋还没想过将multiplier设置为负数吧)。
_myColorTransform.redMultiplier = -1;_myColorTransform.greenMultiplier =-1;_myColorTransform.blueMultiplier = -1;_myColorTransform.redOffset = 255;_myColorTransform.greenOffset = 255;_myColorTransform.blueOffset = 255;
可出来的效果跟预期的不一致。(图 1.19)
图 1.19 反色效果
经过将近两周的纠结之后,我终于找到了问题的症结所在——跟BlendMode发生冲突了。因为BlendMode.ADD也是像素运算,两者混合后的运算机制以及优先级规则尚有待作进一步的研究。
把BlendMode.ADD一句去掉之后,反色效果跃然屏上。(图 1.20)
图 1.20 修正后的反色效果
0 0
- ActionScript3游戏中的图像编程(连载十三)
- ActionScript3游戏中的图像编程(连载二)
- ActionScript3游戏中的图像编程(连载三)
- ActionScript3游戏中的图像编程(连载四)
- ActionScript3游戏中的图像编程(连载五)
- ActionScript3游戏中的图像编程(连载六)
- ActionScript3游戏中的图像编程(连载七)
- ActionScript3游戏中的图像编程(连载八)
- ActionScript3游戏中的图像编程(连载九)
- ActionScript3.0游戏中的图像编程(连载一)
- ActionScript3游戏中的图像编程(连载十)
- ActionScript3游戏中的图像编程(连载十一)
- ActionScript3游戏中的图像编程(连载十二)
- ActionScript3游戏中的图像编程(连载十四)
- ActionScript3游戏中的图像编程(连载十五)
- ActionScript3游戏中的图像编程(连载十六)
- ActionScript3游戏中的图像编程(连载十七)
- ActionScript3游戏中的图像编程(连载十八)
- MahApps.Metro控件使用
- 【Pomelo】使用 WebStorm IDE 调试 Pomelo 应用程序
- IOS UItableView得group风格如何去掉分割线问题
- 自动代码复制工具
- VS2010通过Nuget无法初始化 PowerShell 主机
- ActionScript3游戏中的图像编程(连载十三)
- ACdream 1142 String opearation
- 《小时代2青木时代》 短评 与郭敬明的中立评价
- 13.3 Palindrome Partitioning II
- 遍历文件夹下所有文件
- HDU-4885-TIANKENG’s travel
- 10 Articles Every Programmer Must Read
- 网卡故障:弹出界面eth0: 错误:没有找到合适的设备:没有找到可用于链接System eth0 的
- 13.4 Maximal Rectangle