ActionScript3游戏中的图像编程(连载十一)

总目录:http://blog.csdn.net/iloveas2014/article/details/38304477

1.2.5 colorTransform在色彩处理方面的不足

        在以上的测试中,有些本来不同的颜色在经过colorTransform转换后变得出奇的一致,如果是想给图像做变色效果,这样的情况往往是我们想要避免的。此时,ColorTransform就显得有点心有余而力不足了。

        归根到底,还是在于RGB模式在人类的视觉体验方面做得不够友好。

        接下来,我们看看之前没测试过的alpha变换,理所当然的,之前的图像就不太适用了,因为图像里每个像素点的alpha都等于1。

 

1.2.6 Alpha测试用例的书写

        把ShapeColorTransformTest复制为ShapeColorTransformTest,然后对代码进行如下调整:

        首先把getTestSprite修改为:

//创建用于测试的显示对象
private function getTestSprite():Sprite{
 var _f:Array = [new BlurFilter(80, 80)];
 var _testSprite:Sprite = new Sprite();
 /*添加两个圆,颜色分别为白和黑*/
 _testSprite.addChild(new Circle(50, 0xFFFFFF, 100, 100)).filters = _f;
 _testSprite.addChild(new Circle(50, 0xFFFFFF, 100, 250)).filters = _f;
 return _testSprite;
}

 

        而applyTransform函数则调整如下:

private function applyTransform():void{
 _myColorTransform = _testSprite_dst.transform.colorTransform; 
 _myColorTransform.alphaMultiplier = 0;
 _myColorTransform.alphaOffset = 127;
 _testSprite_dst.transform.colorTransform = _myColorTransform;
}


        运行效果如图 1.13所示。作者用了BlurFilter模糊滤镜生成了带两个透明渐变圆的Sprite,本来用透明渐变填充会更合理,但考虑到渐变代码比较复杂,这里还没介绍到,就先拿模糊滤镜凑合着用吧。
 

图 1.13 alpha测试用例

        下面我们尝试一下alpha变换。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ActionScript 3.0 是一种基于Adobe Flash 平台的编程语言,常用于游戏开发。它具有强大的功能和丰富的库,可实现各种游戏特效和交互方式。以下是关于使用ActionScript 3.0 开发游戏的一些重要信息。 首先,ActionScript 3.0 具有面向对象编程的特性,如封装、继承和多态,这使得游戏开发加灵活和可扩展。你可以创建各种类型的游戏对象,并根据需要设定它们的属性和行为。 其次,ActionScript 3.0 提供了丰富的图形和动画处理功能。你可以使用内置的绘图库来创建游戏场景、角色和特效,也可以通过使用动画库来制作复杂的动画序列。此外,还可以利用位图和矢量图形进行图像处理和渲染。 除了图形和动画,ActionScript 3.0 还提供了音频和视频处理能力。你可以使用内置的音频库来播放背景音乐和音效,还可以通过外部库或平台来处理视频和流媒体。 另外,ActionScript 3.0 支持网络功能,如Socket 和HTTP 连接等。这意味着你可以开发在线多人游戏,与其他玩家进行实时对战或合作。 此外,Adobe Flash 还提供了一套全面的开发工具和环境,如Adobe Animate 和Flash Builder。这些工具提供了可视化的界面设计、调试和测试的功能,可以帮助开发者高效地创建和调整游戏。 总而言之,ActionScript 3.0 是一种强大的游戏开发语言,具有丰富的功能和工具。使用它,开发者可以创建出各种类型的游戏,并实现复杂的图形、动画、音频和网络交互效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值