蒙在股里 发表于 2015-1-15 20:52:57

来看看:Flash as进门(7):创立影片剪辑-Flash actionscript

AdobeFlashCS5.5中的动画制作更简单,借助基于对象的动画快速创建动画、轻松修改运动路径并全面控制个别动画属性。
本例持续解说AS的基本常识,明天我们来进修FlashAS进门系列教程第七课:影片剪辑第一节创立影片剪辑,对Flash的AS编程有乐趣的伴侣能够到论坛与作者交换。
上一篇FLASHAS教程:文本与字符串游戏实例
影片剪辑
影片剪辑就象一个自力的swf一样,运转时不受主工夫轴的限定,它有它自已的工夫轴。在AS中影片剪辑为MovieClip类范例的一个工具。您可使用MovieClip类的属性和办法把持影片剪辑运转时的表面和举动。因而,鄙人文中将影片剪辑简称为:mc
第一节创立MC
一.在创作情况中创立MC:
在创作情况中创立MC的办法是:点击“拔出”菜单-“新建元件”,在弹出的对话框中为该MC定名,鄙人面的范例选择当选“影片剪辑”,断定。如今就进进了MC的编纂情况,在这里制造你的MC。制造完成后,点击场景选项卡,则完成了MC的创立。翻开库面板,能够看到方才创立的MC已在库中。为了能在AS中操纵该MC,那末可有两种体例将MC加载到舞台上:一是用鼠标从库中将MC拖到舞台上,然后翻开属性面板,为该MC实例定名,好比:mymc_mc。另外一种办法是:
在运转中从库中加载MC:
要在运转中从库中加载MC,起首要设置MC的毗连标识:在库中右击MC,点击毗连,在弹出的对话框中,在“为ActionSprit导出“前的方框中打钩,然后在下面标识符栏内取一个名字,好比:mymc.
attachMovie()办法
有标识符后就能够在运转时用MC的attachMovie()办法加载MC。
格局:MC.attachMovie(“标识符”,“新称号”,深度);
这里MC是指要加载MC的MC,一个MC中是能够加载另外一个MC的,固然也能够是主工夫轴,假如代码是写在帧上,则经常使用this或_root来代表主工夫轴,保举利用this,也能够省略不写。假如代码是写在元件上,要主场景加载mc就必需用:_root或this.perent.
getNextHighestDepth()办法:
深度相称于层的观点,深度的数字越年夜,则越在下面。假如深度不异,那新加载的工具就会掩盖本来不异深度上的工具,在前面我们会发明这是一个非常有效的器材。在用attachMovie()办法加载MC时,如何却定深度呢?深度一样平常能够从0入手下手,从上加。也有成绩,你说我记不住如今深度是几了,万一用重了,不是就将本来谁人工具删了吗?因而getNextHighestDepth()办法运应而生。
getNextHighestDepth()办法断定传送给attachMovie()办法的深度值,以确保Flash将该影片剪辑出现在以后影片剪辑中统一级和统一层上一切别的工具的后面。因而我们下面已在库中设好标识符的MC就能够如许加载加入景中:
this.attachMovie(“mymc”,”mymc_mc”,this.getNextHighestDepth());
用attachMovie()办法加载的MC,会被加载到舞台上(0,0)的地位,很明显这不是我们想要的了局,以是加载后常常要设置MC的_x,_y属性,以使它呆在我们但愿它呆的中央。
上面来做一个实习:
新建一个MC,居中画一个圆,在第50帧拔出关头帧,将圆向右移500象素,创立补间动画。在库中右击圆元件,点击“毗连”,在弹出的对话框中,在“为ActionSprit导出“前的方框中打钩,然后在下面标识符栏内取一个名字:mymc.如今回到主场景,右击第一帧,点“举措”,在举措面板中输出:
this.attachMovie(“mymc”,”mymc_mc”,this.getNextHighestDepth());
mymc_mc._x=50;
mymc_mc._y=200;
测试影片,会看到库中的MC被加载到舞台上,一个圆从屏幕的右边向右侧挪动。


二.在运转时创立MC
createEmptyMovieClip()办法
在运转时可用:createEmptyMovieClip()办法创立一个空的MC,这经常用于需用AS画图的代码中。
格局:MC.createEmptyMovieClip(”称号“,深度);
例:this.createEmptyMovieCli(”mymc_mc”,this.getNextHighestDepth());
三.复制MC
duplicateMovieClip()办法:

在运转时复制一个MC。
格局:MC.duplicateMovieClip(“新称号“,深度)
好比下面我们已建好的一个MC,mymc_mc,如今要复制它,如许写:

Mymc_mc.duplicateMovieClip(“mymc1_mc”,this.getNextHighestDepth());
duplicateMovieClip()全局函数:
这是一个全局函数而不是MC的办法,固然它们的感化是一样的,但格局有所分歧。
格局:duplicateMovieClip(“要复制的MC的称号”,“新称号”,深度);
仍旧以mymc_mc为例,要复制它,如许写:
duplicateMovieClip(“mymc_mc”,“mymc1_mc”,this.getNextHighestDepth())


四.删除加载的MC
removeMovieClip()办法:
关于用attachMovie()办法加载的,用duplicateMovieClip复制的和用createEmptyMovieClip()创立的MC,能够用removeMovieClip()办法移除。
来看看下面我们做谁人实习,测试时,小球一直地重复地从左向右活动,如今我们让小球只活动一次,即当小球抵达右侧时,移除小球MC。
做法:在库中双击小球MC,进进小球元件编纂区,在第50帧上,点右键,点举措,在帧面板中输出:
this.removeMovieClip();
测试影片,当小球挪动右侧,第50帧时,小球被移除。
五.几个经常使用的属性:
MC有良多属性,将在后续课程中连续先容,这里先先容几个经常使用的属性:
_x,_y:MC在其父级容器中的坐标地位。
_alpha:通明度,其值为0-100;
_rotation:扭转的角度。
_height:高度
_width:宽度
_visible:MC是不是可见,些值为true或1,则MC可见,假如为false或非1则不成见。
_xmouse:鼠标地位的x坐标
_ymouse:鼠标地位的y坐标
_xscale:MC宽度的百分比例,可用于设置MC的巨细。
_yscale:MC高度的百分比例,可用于设置MC的巨细。
六.综合实习:夜色中的荧火虫
http://www.poluoluo.com/files/media/1_090124095150.swf
上面经由过程一个夜色中的荧火虫的制造,作为本节内容的综合实习。
起首新建一flash文档,新建一MC,取名为“荧光”。用椭圆工具,克制笔触,绿色添补,居中画一个小圆,2个像素巨细就行。居中对齐。点击“修正”-“外形”-“柔化添补边沿“,间隔10,步骤5,偏向扩大。在第10帧拔出关头帧,将圆向下离一段间隔。创立补间动画。在库中右击荧光元件,设置标识符为:mymc.
回到主场景,翻开帧举措面板输出:
i=0;
onEnterFrame=function(){

if(i<50){

this.attachMovie("mymc","mymc"+i,i);

mymc_mc=eval("mymc"+i);

mymc_mc._x=random(450)+50;

mymc_mc._y=50+random(300);


mymc_mc._rotation=random(360);


i++;

}else{

i=0;

}
}
OK,测试影片。
下面代码经由过程onEnterFrame事务,使每过帧从库中加载一次荧光元件,并用一个i变量计数,使荧光数目不凌驾50。this.attachMovie("mymc","mymc"+i,i);这一句加载语句中的深度用了变量i,而i将会是从0到49,然后回到0,循环往复,如许第二轮的0-49将的深度就与第一轮的不异,下面我们说到了,这时候新加载的就会掩盖本来的,这就完成了荧光的更新,同时也包管了荧光的总数目为50个。后面我们说深度的这一特征将会很有效,在这里就用上了。荧光的地位和扭转角度都接纳random()来随机发生,如许就完成了,荧光随机呈现的舞台上,活动偏向也是随机的。
人人能够扩大一下,将加载的荧光元件的_x属性设为:_xmouse+random(50),将_y属性设为:_ymouse+random(50),测试看一看,一个鼠标跟从效果就出来了。
下面实习是用attachMovie()从库中加载元件的体例完成的,用duplicateMovieClip()复制的办法也是能够完成的,办法略有分歧:
将库中的灾光元件拖到舞台上,任一名置,翻开属性面板,将实例称号设为:mymc_mc.帧举措上的代码为:
mymc_mc._visible=false;//起首将舞台上的荧光元件埋没。
i=0;
onEnterFrame=function(){

if(i<50){
duplicateMovieClip(“mymc_mc”,"mymc"+i,i);

mymc_mc=eval("mymc"+i);

mymc_mc._x=random(450)+50;

mymc_mc._y=50+random(300);


mymc_mc._rotation=random(360);


i++;

}else{

i=0;

}
}

功课:
1.夜色下的荧火虫的制造

2.用本节所讲内容制造一下雨或下雪效果。

占用硬盘空间少,所以被广泛应用于游戏、网络视频、网站广告、交互设计等。

admin 发表于 2015-1-17 14:55:11

所以不要使用不必要的高祯率-否则老的、慢的计算机在显示动画时会阻塞。

蒙在股里 发表于 2015-1-21 09:43:34

Flash是一种以向量图方式制成的网页动画,相比MPEG,AVI等的影片的档案大小就小很多.

分手快乐 发表于 2015-1-30 14:07:16

Flash使交互性容易,并且消除了学习某种语言的需要。折中办法是不学语言,同时失去一些功能。但是你仍然可以处理基于用户动作(如鼠标移动或点击)的触发事件,这通常是你需要的所有交互性。

只想知道 发表于 2015-2-6 13:30:13

目前动画广告在各类电视节目中有着广泛的应用,在影视及广告中占有重要地位。广州形动数码是国内领先的动画设计制作,

简单生活 发表于 2015-2-16 09:08:18

它包含了下列常见的形式之一或者几种的组合:流媒体、声音、Flash、以及Java、Javascript、DHTML等程序设计语言。  

第二个灵魂 发表于 2015-3-5 05:44:16

flash制作的动画文件比较小,可以在网络上快速传播!

谁可相欹 发表于 2015-3-11 23:53:48

用户在观看广告的时候,无法通过正常点击鼠标来查看广告的尺寸、字节数、所链接的URL广告本身信息。

灵魂腐蚀 发表于 2015-3-19 17:32:00

FLASH的优点~你用眼睛所看到的东西~都能用它来实现~一点不夸张~高楼大厦-花草树木-高山流水-天空白云-阿猫阿狗-一切活的东西都可以容入到FLASH里面
页: [1]
查看完整版本: 来看看:Flash as进门(7):创立影片剪辑-Flash actionscript