首页 > 代码库 > ActionScript游戏中的图像编程(连载十一)

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

1.2.6 Alpha测试用例的书写

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

      首先把getTestSprite修改为:

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

      而applyTransform函数则调整如下:

1 private function applyTransform():void{2  _myColorTransform = _testSprite_dst.transform.colorTransform; 3  _myColorTransform.alphaMultiplier = 0;4  _myColorTransform.alphaOffset = 127;5  _testSprite_dst.transform.colorTransform = _myColorTransform;6 }

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

 

图 1.13 alpha测试用例

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