论文部分内容阅读
摘要:制作钢琴动画的方法很多,但是使用Flash可以说是一种通用的非常有效的方法。使用Flash制作钢琴动画,不仅可以实现简易钢琴的功能,而且界面更加美观、生动,充分发挥了Flash软件的优势。
关键词:影片剪辑;元件;关键帧
中图法分类号:TP319文献标识码:B文章编号:1009-3044(2008)08-10ppp-0c
1 引言
通过各种渠道,相信大家多多少少都见过一些乐器软件吧?比如钢琴。当然了,制作的方法也是各种各样。比如,可以使用汇编语言、C语言等设计相关的程序,也可以使用Authorware,Flash等多媒体软件制作。其中,Flash软件是Macromedia公司推出的一款矢量图形编辑和动画创作软件。用Flash制作钢琴动画,不仅可以实现简易钢琴的功能,而且界面更加美观、生动,充分发挥了Flash的优势。本文的制作方法就是采用Flash,使用的版本是Flash MX。
2 用Flash MX制作简易钢琴的功能
第一,使用鼠标单击钢琴的相应按键,不仅会发出真实的声音,而且琴键被按下的动画也会出现。
第二,如果使用键盘,可以由相应的按键控制钢琴的发音。
3 前期准备工作
3.1 钢琴框架
在制作Flash钢琴动画之前,首先看要有钢琴的框架作为创作的基础。我们可以通过互联网下载钢琴的实例图片导入Flash MX库中,直接使用。当然了,你也完全可以通过Flash软件直接绘制出独具特色的个性钢琴框架。做好了钢琴框架以后,把它放到主场景第一层的第一帧中即可。
3.2 钢琴按键的声音
在本例中,因为是简易的钢琴动画,涉及到白键和黑键,因此声音收集了48种,声音收集的途径可以是互联网,也可以是自己录制。总之,收集好了以后,把这48种声音统统导入Flash MX库中,供以后使用。
4 制作影片剪辑
有了钢琴的框架以后,就要增加白键和黑键了。(本例中白键28个,黑键20个)因为在本例中,需要实现琴键被向下按的动画效果,因此要将白键和黑键设置为影片剪辑。
4.1 制作白键影片剪辑
新建一影片剪辑,命名为“白键”,然后在第一帧绘制一黑色边框、白色填充的矩形作为白键。
在第二帧按F6键,插入关键帧,复制一白键。但是这里要将白键的位置做一些小的变动:整体向下移动一些。这样做的目的是为了使得琴键被按下后在视觉上产生较为逼真的效果。此外,还要在该帧插入键盘上最左端白键的声音“超低 1.mp3”,同时在属性面板中将其设置为“事件”,重复为“0”。
之后进入第三帧的设置,基本和第二帧一致。只不过是在该帧插入的声音为“超低2.mp3”,其他设置不变。
剩下的第四帧、第五帧……第二十九帧都重复相同的操作,这样做的目的就是将白键的28种声音全部放到按键上,便于以后的调用。
当然,最后不要忘记在每一帧上添加代码:stop( ),以使得动画开始时白键处于静止的初始状态。制作效果如图1所示:
图2 黑键影片剪辑
5 制作相关按钮元件
钢琴的框架有了,声音有了,按键也有了,剩下的就是要添加控制按键影片剪辑发出声音的按钮了。
新建一按钮元件,将其命名为“白键按钮”。可以将其响应区设置为和白键一样的大小,这样的话,能够确保单击白键时,不会发错声音。
制作黑键的按钮元件方法与之一样。
6 主场景的编排
辅助的工作做好以后,下面就来对主场景进行编排。返回主场景,再插入四个图层,自下而上依次命名为“白键”、“白键按钮”、“黑键”和“黑键按钮”。
从库中拖出 28 个影片剪辑 “白键”,分别放在钢琴框架的合适位置,并且给这28个实例分别命名为:
1do; 1re; 1mi; 1fa; 1so; 1la; 1si;
2do; 2re; 2mi; 2fa; 2so; 2la; 2si;
3do; 3re; 3mi; 3fa; 3so; 3la; 3si;
4do; 4re; 4mi; 4fa; 4so; 4la; 4si。
如果大小出现问题,可以调整其形状,直到合适为止。
在“白键按钮”层的第一帧存放“白键按钮”元件,并且从库中拖入28个该按钮元件分别覆盖于白键元件上。这里要注意的是要将按钮元件的的Alpha值设为“0%”,这样的话,按钮就会变成透明状,而不会盖住白键。
以同样的方法在“黑键”和“黑键按钮”层分别拖入20个“黑键”影片剪辑和20个“黑键按钮”元件,并将按钮的Alphs值也设置为“0%”。此时,给这20个黑键实例分别命名为:
5do; 5re; 5fa; 5so; 5la;
6do; 6re; 6fa; 6so; 6la;
7do; 7re; 7fa; 7so; 7la;
8do; 8re; 8fa; 8so; 8la。
7 添加脚本语言
7.1 控制白键声音
选中“白键按钮”图层,给第1个按钮元件添加动作。打开动作面板,输入如下Action语句:
on (press) {
1do.gotoAndStop(2);
}
on (release) {
1do.gotoAndStop(1);
}
单击第2个按钮元件,在动作面板中输入:
on (press) {
1re.gotoAndStop(3);
}
on (release) {
1re.gotoAndStop(1);
}
单击第3个按钮元件,在动作面板中输入:
on (press) {
1mi.gotoAndStop(4);
}
on (release) {
1mi.gotoAndStop(1);
}
以此类推,最后单击第28个按钮元件,在动作面板中输入:
on (press) {
4si.gotoAndStop(29);
}
on (release) {
4si.gotoAndStop(1);
}
7.2 控制黑键声音
选中“黑键按钮”图层,给第1个按钮元件添加动作。打开动作面板,输入如下Action语句:
on (press) {
5do.gotoAndStop(2);
}
on (release) {
5do.gotoAndStop(1);
}
单击第2个按钮元件,在动作面板中输入:
on (press) {
5re.gotoAndStop(3);
}
on (release) {
5re.gotoAndStop(1);
}
单击第3个按钮元件,在动作面板中输入:
on (press) {
5fa.gotoAndStop(4);
}
on (release) {
5fa.gotoAndStop(1);
}
以此类推,最后单击第20个按钮元件,在动作面板中输入:
on (press) {
8la.gotoAndStop(21);
}
on (release) {
8la.gotoAndStop(1);
}
好了,到这里工作基本已经完成了。因为Flash动画是逐帧播放的,因此不要忘记在主场景任意图层的第一帧添加代码:stop( )。测试一下影片看看吧!这时一个简易的钢琴就可以通过鼠标控制奏出美妙的旋律了。
8 键盘控制琴键
以上操作可以实现鼠标控制琴键发声,如果感兴趣的话,也可以改成用键盘去控制。这里就不详细讲解了,只做简单介绍。
为了实现相应键盘事件,以按键“1”实现发出声音1do为例,需要为键盘添加如下脚本代码:
on(keyPress”1”)
{
TellTarget(“/music1”){ // music1为声音实例名称
Play( );
}
}
其他按键以此类推,其实这些脚本比较简单,只是当用户按下键盘上的相应按键后,就激发影片中相应的实例,插入的实例就会发出相应的声音来。
这下再保存文件,导出影片看看效果吧,是不是更好了?如图3所示:
图3 钢琴效果图
9 结束语
制作钢琴动画的方法的确很多,在本例中所使用的基于Flash MX的方法经导出影片后效果不错,该方法可以说是一个通用有效的方法。在该方法中,涉及到的程序代码较少,而且代码的逻辑也比较简单,即使是不擅长编写程序者操作起来也不困难。总之,你可以充分发挥自己的想象力,做出更具特色的、更多功能的乐器。
参考文献:
[1]陈冠竹.Flash MX 2004互动设计[M] .北京:科学出版社.
[2]刘旭东.Flash MX 2004动画制作实战指南[M].上海:上海科学技术出版社.
[3]马龙工作室.Flash MX ActionScript 实用字典[M].北京:机械工业出版社.
关键词:影片剪辑;元件;关键帧
中图法分类号:TP319文献标识码:B文章编号:1009-3044(2008)08-10ppp-0c
1 引言
通过各种渠道,相信大家多多少少都见过一些乐器软件吧?比如钢琴。当然了,制作的方法也是各种各样。比如,可以使用汇编语言、C语言等设计相关的程序,也可以使用Authorware,Flash等多媒体软件制作。其中,Flash软件是Macromedia公司推出的一款矢量图形编辑和动画创作软件。用Flash制作钢琴动画,不仅可以实现简易钢琴的功能,而且界面更加美观、生动,充分发挥了Flash的优势。本文的制作方法就是采用Flash,使用的版本是Flash MX。
2 用Flash MX制作简易钢琴的功能
第一,使用鼠标单击钢琴的相应按键,不仅会发出真实的声音,而且琴键被按下的动画也会出现。
第二,如果使用键盘,可以由相应的按键控制钢琴的发音。
3 前期准备工作
3.1 钢琴框架
在制作Flash钢琴动画之前,首先看要有钢琴的框架作为创作的基础。我们可以通过互联网下载钢琴的实例图片导入Flash MX库中,直接使用。当然了,你也完全可以通过Flash软件直接绘制出独具特色的个性钢琴框架。做好了钢琴框架以后,把它放到主场景第一层的第一帧中即可。
3.2 钢琴按键的声音
在本例中,因为是简易的钢琴动画,涉及到白键和黑键,因此声音收集了48种,声音收集的途径可以是互联网,也可以是自己录制。总之,收集好了以后,把这48种声音统统导入Flash MX库中,供以后使用。
4 制作影片剪辑
有了钢琴的框架以后,就要增加白键和黑键了。(本例中白键28个,黑键20个)因为在本例中,需要实现琴键被向下按的动画效果,因此要将白键和黑键设置为影片剪辑。
4.1 制作白键影片剪辑
新建一影片剪辑,命名为“白键”,然后在第一帧绘制一黑色边框、白色填充的矩形作为白键。
在第二帧按F6键,插入关键帧,复制一白键。但是这里要将白键的位置做一些小的变动:整体向下移动一些。这样做的目的是为了使得琴键被按下后在视觉上产生较为逼真的效果。此外,还要在该帧插入键盘上最左端白键的声音“超低 1.mp3”,同时在属性面板中将其设置为“事件”,重复为“0”。
之后进入第三帧的设置,基本和第二帧一致。只不过是在该帧插入的声音为“超低2.mp3”,其他设置不变。
剩下的第四帧、第五帧……第二十九帧都重复相同的操作,这样做的目的就是将白键的28种声音全部放到按键上,便于以后的调用。
当然,最后不要忘记在每一帧上添加代码:stop( ),以使得动画开始时白键处于静止的初始状态。制作效果如图1所示:
图2 黑键影片剪辑
5 制作相关按钮元件
钢琴的框架有了,声音有了,按键也有了,剩下的就是要添加控制按键影片剪辑发出声音的按钮了。
新建一按钮元件,将其命名为“白键按钮”。可以将其响应区设置为和白键一样的大小,这样的话,能够确保单击白键时,不会发错声音。
制作黑键的按钮元件方法与之一样。
6 主场景的编排
辅助的工作做好以后,下面就来对主场景进行编排。返回主场景,再插入四个图层,自下而上依次命名为“白键”、“白键按钮”、“黑键”和“黑键按钮”。
从库中拖出 28 个影片剪辑 “白键”,分别放在钢琴框架的合适位置,并且给这28个实例分别命名为:
1do; 1re; 1mi; 1fa; 1so; 1la; 1si;
2do; 2re; 2mi; 2fa; 2so; 2la; 2si;
3do; 3re; 3mi; 3fa; 3so; 3la; 3si;
4do; 4re; 4mi; 4fa; 4so; 4la; 4si。
如果大小出现问题,可以调整其形状,直到合适为止。
在“白键按钮”层的第一帧存放“白键按钮”元件,并且从库中拖入28个该按钮元件分别覆盖于白键元件上。这里要注意的是要将按钮元件的的Alpha值设为“0%”,这样的话,按钮就会变成透明状,而不会盖住白键。
以同样的方法在“黑键”和“黑键按钮”层分别拖入20个“黑键”影片剪辑和20个“黑键按钮”元件,并将按钮的Alphs值也设置为“0%”。此时,给这20个黑键实例分别命名为:
5do; 5re; 5fa; 5so; 5la;
6do; 6re; 6fa; 6so; 6la;
7do; 7re; 7fa; 7so; 7la;
8do; 8re; 8fa; 8so; 8la。
7 添加脚本语言
7.1 控制白键声音
选中“白键按钮”图层,给第1个按钮元件添加动作。打开动作面板,输入如下Action语句:
on (press) {
1do.gotoAndStop(2);
}
on (release) {
1do.gotoAndStop(1);
}
单击第2个按钮元件,在动作面板中输入:
on (press) {
1re.gotoAndStop(3);
}
on (release) {
1re.gotoAndStop(1);
}
单击第3个按钮元件,在动作面板中输入:
on (press) {
1mi.gotoAndStop(4);
}
on (release) {
1mi.gotoAndStop(1);
}
以此类推,最后单击第28个按钮元件,在动作面板中输入:
on (press) {
4si.gotoAndStop(29);
}
on (release) {
4si.gotoAndStop(1);
}
7.2 控制黑键声音
选中“黑键按钮”图层,给第1个按钮元件添加动作。打开动作面板,输入如下Action语句:
on (press) {
5do.gotoAndStop(2);
}
on (release) {
5do.gotoAndStop(1);
}
单击第2个按钮元件,在动作面板中输入:
on (press) {
5re.gotoAndStop(3);
}
on (release) {
5re.gotoAndStop(1);
}
单击第3个按钮元件,在动作面板中输入:
on (press) {
5fa.gotoAndStop(4);
}
on (release) {
5fa.gotoAndStop(1);
}
以此类推,最后单击第20个按钮元件,在动作面板中输入:
on (press) {
8la.gotoAndStop(21);
}
on (release) {
8la.gotoAndStop(1);
}
好了,到这里工作基本已经完成了。因为Flash动画是逐帧播放的,因此不要忘记在主场景任意图层的第一帧添加代码:stop( )。测试一下影片看看吧!这时一个简易的钢琴就可以通过鼠标控制奏出美妙的旋律了。
8 键盘控制琴键
以上操作可以实现鼠标控制琴键发声,如果感兴趣的话,也可以改成用键盘去控制。这里就不详细讲解了,只做简单介绍。
为了实现相应键盘事件,以按键“1”实现发出声音1do为例,需要为键盘添加如下脚本代码:
on(keyPress”1”)
{
TellTarget(“/music1”){ // music1为声音实例名称
Play( );
}
}
其他按键以此类推,其实这些脚本比较简单,只是当用户按下键盘上的相应按键后,就激发影片中相应的实例,插入的实例就会发出相应的声音来。
这下再保存文件,导出影片看看效果吧,是不是更好了?如图3所示:
图3 钢琴效果图
9 结束语
制作钢琴动画的方法的确很多,在本例中所使用的基于Flash MX的方法经导出影片后效果不错,该方法可以说是一个通用有效的方法。在该方法中,涉及到的程序代码较少,而且代码的逻辑也比较简单,即使是不擅长编写程序者操作起来也不困难。总之,你可以充分发挥自己的想象力,做出更具特色的、更多功能的乐器。
参考文献:
[1]陈冠竹.Flash MX 2004互动设计[M] .北京:科学出版社.
[2]刘旭东.Flash MX 2004动画制作实战指南[M].上海:上海科学技术出版社.
[3]马龙工作室.Flash MX ActionScript 实用字典[M].北京:机械工业出版社.