Flash as入门(12):使用遮罩Mask-Flash actionscript

2016-03-18 15:41 74 1 收藏

每个人都希望每天都是开心的,不要因为一些琐事扰乱了心情,闲暇的时间怎么打发,关注图老师可以让你学习更多的好东西,下面为大家推荐Flash as入门(12):使用遮罩Mask-Flash actionscript,赶紧看过来吧!

【 tulaoshi.com - FLASH 】

本例继续讲解AS的基础知识,今天我们来学习Flash AS入门系列教程第七课:影片剪辑第6节使用遮罩,对Flash的AS编程有兴趣的朋友可以到论坛与作者交流。

上一篇文章:Flash as入门(11):拖动与碰撞检测

第6节 使用遮罩

遮罩是flash动画制作常使用的一种技术。它可形面一个空洞使被遮盖的对象能透过空洞成形为可见。在flash舞台上常使用遮罩层来实现这个技术。在AS中则常采用MC来实现遮罩。将遮罩对象和被遮罩对象均制作成MC,然后使用setMask()方法即可实现遮罩效果。

setMask()方法:
MC的setMask()方法,可使一个MC成为自已的遮罩。
MC.setMask(另一个MC);
练习:在舞台上画一个矩形,将其转换为MC,实例名称为:jx_mc.
再画一个小一点的园,将其转换为MC,实例名为yun_mc;
将园放到矩形上,打开动作面板,输入:
jx_mc.setMask(yun_mc);
yun_mc.onPress=function(){
this.startDrag(true);
}
yun_mc.onRelease=function(){
stopDrag();
}
测试影片,园已成了矩形的遮罩。

遮罩设备字体文本:
经常有人问,为什么我做的文本被罩后,点播放有遮罩效果,测试影片时,就什么都没有了呢?以前我们都教别人的做法是,将文本打散,因为文本打散后就是图象了,就可以有遮罩效果了。这样做是比较简单一些,但有个问题,打散后的文字有可能笔画会粘连在一起不好看。我们还是想为什么文本就不能被遮罩呢?这是因为你使用了设备字体。在flash中设备字体不能用遮罩层来遮罩,只能用MC来遮罩,也就是说只能用上面的方法实现。

练习:新建一MC,用文本工具输入一句话(使用设备字体)。回到主场景,将文本MC拖到舞台上。实例名称为:wb_mc.在文本的左边画一个无笔触,任一填充的矩形,高同文本,宽10象素左右。转换为MC,实例名称为:zz_mc.双击它,进入编辑状态,在第40帧插入关键帧,用变形工具将它拖成与文本一样长,遮住文本,创建补间动画。回到主场景,新建一层,打开动用面板,输入:

wb_mc.setMask(zz_mc);
测试影片,我们要要的遮罩效果出现了。

关于 Alpha 通道遮罩:
我们常常看到一种效果,有人把它叫模糊遮罩,有人把它叫羽化遮罩。一眼看上去,聪明如我的家伙们就知道这是一种遮罩效果。这无非就是遮罩层透明度降低一些,或使用模糊滤镜。于是信心满满地就开始做了,结果是可想而知的,失败!

FlaTulaoshi.Comsh把这种遮罩叫做Alpha 通道遮罩,使用这种遮罩可以设置遮罩元件的透明度,也可以使用滤镜效果。但使用这种遮罩必须注意两点:1. Alpha 通道遮罩:不支持遮罩层的遮罩方式,只能使用MC来遮罩。2.遮罩MC和被遮罩MC都必须使用运行时位图缓存。 

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/flash/)

下面我们来做个练习,进一步掌握本节所介绍的内容。

效果:

1. 新建一flash文档,导入一张背景图片和一张观音图片。
2. 先制作元件,新建一MC,取名为观音,将观音图片拖入,调整大小,居中对齐。
3. 新建一MC,取名为遮罩观音,将观音元件拖入居中对齐,打开属性面板,实例名称为:img_mc,在使用运行时缓存前打钩。在200帧插入帧,上锁。新插入一图层画一个无笔触任一填充色的椭园,如下图:

将这个椭园转换为MC,实例名称为:zz_mc, 在使用运行时缓存前打钩。打开滤镜面板,为zz_mc添模糊滤镜,值为100.在第30 帧插入关键帧,回到第一帧,将椭园缩小到2像素,建立补间动画。在第90帧插入关键帧,在第120帧插入关键帧,将椭园缩小到2像素。在第200帧插入帧。上锁。新建一图层,取名为action,打开帧动作面板,输入:
img_mc.setMask(zz_mc);

4. 新建一MC,取名为文本,用文本工具输入,如下图的文字,使用设备字体。

5. 新建一MC,取名为遮罩文本,将文本元件拖入居中对齐,实例名称为:wb_mc, 在使用运行时缓存前打钩。在170帧插入帧,上锁。新插入一图层,画一无笔触线型填充色,左色标透明度为0,右色标透明度为100的矩型,矩型左边与文本右边对齐,如下图:

将矩型转换为MC,实例名称为zz2_mc, 在使用运行时缓存前打钩。在第30帧插入关键帧,将矩型右边与文本右边对齐,建立补间动画。在第60帧插入关键帧,在第90帧插入关键帧,将矩型的左边与文本的右边对齐,在第170帧插入帧,上锁。新建一层,取名为action,打开帧动作面板,输入:
wb_mc.setMask(zz2_mc);

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/flash/)


6. 回到主场景,将背景图片拖入,打开对齐面板,相对于舞台,宽高匹配,居中对齐。在200帧插入帧。上锁。
7. 新建一层,将遮罩观音元件拖入,放于舞台中间上部,在200帧插入帧。
8. 新建一图层,在30帧插入关键帧,将遮罩文本拖入,放于舞台右边上部,在200帧插入帧。
OK,完成了。

本练习中的素材:

来源:http://www.tulaoshi.com/n/20160318/1887863.html

延伸阅读
标签: FLASH flash教程
看效果: 那天在网上看到一个效果,感觉不错,今天晚上没事自己也模仿了一下。做得不好,希望大家不要见笑! ////// //椭圆短半轴 var H = 80; //椭圆长半轴 var W = 200; //定义弧度的增量n var n = 0; //定义椭圆的中心坐标 var cenX = Stage.width/2; var cenY...
标签: 代码
随着flash cs3的到来,同时提供给我们一个崭新的,针对Adobe Flash(swf)影片和功能程序的标准的程序开发语言。在之前的一段时间里,你可能发现入门ActionScript 3.0与其它版本的ActionScript相比会有一些难度.例如,如果拿ActionScript 1.0到ActionScript 2.0的变化相比的话,那么对于ActionScript变化到ActionScript 3.0可以说是一个比较大...
标签: FLASH flash教程
poluoluo核心提示:Flash高级技巧教程:flash手写输入. 之前见有一些网友提到过此类问题,也有人讨论过了,大致原理就是坐标数据,然后根据点坐标去判断笔画,然后生成字符。最近无聊就尝试去试试,因为手写输入,难点就是根据数据生成笔画这,可惜我是前端的,后台数据不是太了解,所以就打算研究下现在网站上比较通用的flash手写输入。[大...
标签: flash教程
Flash入门途径 下面我的说每一个问,请你都不要跳过,不管您用什么手段,必须一个个吃透,否则欲速则不达。 1、三种图层 图层:和Photoshop的图层差不多。 导向层:不仅可以导向Motion动画,还有参考层的作用(这个功能用的人就不多了)。 蒙板层:蒙板层有图像的地方,它下面那层的内容才可显示,有点象3DS MAX里的蒙板...
标签: FLASH flash教程
在AS3里,对XML的控制变得非常方便了,有用过AS2的读者都知道,如果我们用AS2去访问一个节点,做法是xmlObj.firstChild.childNodes[2]如果复杂的XML结构就更麻烦了,所以在AS2时需要把一系统的节点用一个值来先做替身即xmlList= xmlObj.firstChild.childNodes来降底程序的复杂程序。 AS3里使用E4X(ECMAScript for XML)来规范定义组用于处理 ...

经验教程

451

收藏

46
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部