Archive for the ‘Experiment’ Category
BitmapData粒子再测试
效果在这里。图片被切割为8000个7 x 6 像素的粒子,用copyPixel的方式绘制到另一张BitmapData上。如果创建一系列alpha值0到255的bitmapData序列,作为copyPixel的参数,还可以实现透明渐变的效果。运动类使用了TweenNano。
关键部分:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | private function drawParticle():void { //bmd作为画布的bitmapData bmd.lock() bmd.colorTransform(bmd.rect, ctm); var op:Point = new Point(); for (var i:int = 0; i < w; i++) { for (var j:int = 0; j < h; j++) { //得到原图片相应位置的图块 op.x = i * bw; op.y = j * bh; //pArr为一个二维数组类,tp可看做一个Point,储存了当前图块应在的位置 var tp:SimpleParticle2D = pArr.get(i, j); //从原图对应i,j的位置获得图块,复制到画布的新位置上 bmd.copyPixels(src, new Rectangle(op.x,op.y,bw,bh), new Point(tp.x, tp.y)); } } bmd.unlock(); } |
Flurry光效(2)
自从上次开始之后一直比较忙,没有深入做下去。只做到了一个足够项目应用的程度。演示看这里。
模仿Flurry效果
用Mac的同学都知道著名的Flurry屏保。我想尝试用Flash模仿Flurry的效果。这里是一个初步的尝试,先感觉一下颜色和运动的控制。Flurry应该是用粒子的方式做的,并且是三维的,而我目前是在二维上直接绘制光带。等有时间将目前的完善后,再尝试用粒子来做。鼠标点击打开/关闭模糊效果。