|
4.保存影片,按“Ctrl+Enter”预览就可以看到漂亮的“星球大战”开场文字。
第1行到第12行是一些简单的变量声明。其中,变量iMax的值就是背景上将出现的星星的个数。sClipName是用来绘制星空背景的影片剪辑(也就是图1-93的表识为2的那一层)的名字。第5到第8行的两个变量对应的是星星的最大尺寸和最小尺寸。iStarSizeMax最好不要太大,因为这个值越大效果越差。第9到第12行所确定的是星星透明度的最大值与最小值,而这个透明度反映出来的效果就是星星的亮度。
第13行的createEmptyMovieClip方法是Flash MX中的新东西。具体语法是: myMovieClip.createEmptyMovieClip (instanceName, depth)
其作用是在myMovieClip中创建一个名为instanceName的空白影片剪辑(空白=什么都没有),它在myMovieClip中的深度为depth。这也就是说,要引用这个新影片剪辑的话,可以使用myMovieClip.instanceName或myMovieClip[instanceName]这两种语法。在本例中,myMovieClip参数的位置上写的是this对象,即当前影片剪辑。所以这第13行程序的意思就是,在当前影片剪辑中创建一个名字为sClipName(这个变量的值是“starbg”)的空白影片剪辑,其放置的深度为1。
第15行到最后是个for循环,它是绘制星星的主要程序段。第16到33行是循环的主体,其中,第16到23行使用同一条随机数公式来随机设定每颗星星的大小、透明度,为下面的绘制过程作准备。这条用来获得给定范围内随机数的公式是:(最大值 — 最小值)× 随机数函数 + 最小值。注意,这条公式中所使用的随机数函数必须是返回0和1之间(包括0)随机数的随机函数,Flash MX中的随机函数Math.random()就符合这个要求。
再回头来看看程序。这第16与18行的程序似乎跟上面的公式不一样嘛!乍看之下,的确,这两行程序似乎是不一样。但是,如果当上面那条公式中的最小值等于0时,公式会变形为:最大值 × 随机数函数。这样就和16、18行很符合了。iStarX和iStarY变量分别代表的是星星在舞台上横坐标和纵坐标,所以这里分别用舞台的宽(Stage.width)和高(Stage.height)乘以随机函数来得到舞台之内的某组横、纵坐标值。而iStarSize与iStarAlpha分别表示了星星的大小和透明度,这两条使用的就是标准的随机数公式了。iStarColor用以表示星星的颜色(其实也是可以改用随机公式来确定的),这里使用0xffffff,即纯白色。
第26到33行是真正动笔绘制的时候。首先,第26行用了一个with语句,这条语句始现于Flash 5,具体语法为:
使用这条语句可以让你在两个花括号间直接设置对象object的属性,而不需要在每个属性前面再加上object的引用。例如,要设置影片剪辑mc的_x属性,可以写成: mc._x=100;
而使用with语句就可以写成: with (mc) { _x=100; }
使用with语句可以将某一对象的属性设定或方法调用都集中在一起,从而使程序的实现更加结构化,清晰化。当然,象上面例子这种,只设置单个或少数属性的情况下,with语句的好处是比较难体现的。
程序中with语句的object参数是this[sClipName],即第13行程序创建的新影片剪辑starbg。所以,下面花括号中的操作都是针对starbg进行的。第27到32行用的是Flash MX中新添功能Drawing Method(绘图方法)中的三条——lineStyle、moveTo和lineTo方法。
lineStyle具体语法如下: myMovieClip.lineStyle ([thickness[,rgb[,alpha]]])
myMovieClip是要进行设置的影片剪辑的名字。参数thickness,rgb,alpha分别表示线的粗度,16进制形式的颜色值和透明度。如果什么参数也不给的话,那么屏幕将画不出任何线。
moveTo具体语法如下: myMovieClip.moveTo (x,y)
将画笔移动到坐标为(x,y)的点上。这条语句只负责移动画笔并不实际进行任何的绘图操作。
lineTo具体语法如下: myMovieClip.lineTo (x,y)
在画笔当前所在位置和参数所指定的坐标(x,y)之间画一条直线。例如,当前画笔在坐标为(0,0)的点上,执行一条lineTo(10,10)之后,就会在(0,0)到(10,10)之间出现一条直线。注意,在调用这个方法之前一定要先调用lineStyle方法设置好线的属性,否则你将画不出任何东西。
2.到了这里,整个例子可以说是基本上完成了。但为了能让字幕有一点点消失在黑色的星空之中的效果,再给它添加个“帘子”。新建一图层,并为其命名为“shade”,按Shift+F9键,打开“混色器”面板。将填充样式改为“线型渐变”后指定两个黑色指针,并将其中一个的Alpha值设定为0%,即完全透明,如图9所示。

图9 设置“混色器”面板
3.从工具箱中选取“矩形”工具。在属性面板中设定边框色为无色,填充色为上面设定的线性渐变。点击第200帧,在shade上画一个渐变矩形色块,大小应比下面caption层上字幕的尺寸略大,从工具箱中选取“填充变形”工具 。然后点击渐变色块,调整手柄将渐变的方向改为透明部分朝下,调整渐变方向,效果如图如图10所示。
上一页 [1] [2] [3]
|