逐渐出现的马赛克遮照

首先在场景中导入一个图片 把它转换为影片剪辑
把影片剪辑放在主场景第一针

在该影片剪辑上写下如下AS

onClipEvent (load)//当影片剪辑出现在时间轴上时,执行大括号里的语句 {
               numY = 56;
    numY = 70;;//定义图象显示的尺寸
                numPerFrame = 60//定义针速
    currSquare = 0;
    choices = new Array();
    for (i=0; i<numX*numY; i++) {
        choices.push(i);//定义一个新的数组  并不断增加数组长度
    }
    _root.createEmptyMovieClip("mask", 0);//
    this.setMask(_root.mask);//创建一个影片剪辑 作为遮照
    function drawSquare(x, y) {
        with (_root.mask) {
            moveTo(x, y);
            beginFill(0x000088);
            lineTo(x+10, y);
            lineTo(x+10, y+10);
            lineTo(x, y+10);
            endFill();//画出这个遮照,  形状为10*10象素的方块
        }
    }
}
onClipEvent (enterFrame)//影片剪辑针频不断触发此动作 {
    if (currSquare<numX*numY) {
        for (i=0; i<numPerFrame; i++) {
            j = random(choices.length);
            t = choices[j];
            choices[j] = choices[choices.length-1];随机选择方快出现的时间
            choices.pop();//开始删除数组choices中的元素
            x = t%numX;
            y = Math.floor(t/numX);//返回参数中表达式的下限值
            drawSquare(x*10, y*10);
        }
        currSquare += numPerFrame;
        this._alpha = currSquare/(numX*numY)*100;//设置透明度
    }
}

好了现在可以导出看效果了
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值