欢迎来到天天文库
浏览记录
ID:27698061
大小:76.00 KB
页数:6页
时间:2018-12-05
《《flash交互动画》实训教学实践》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、摘要:本文通过将三个较典型的Flash交互动画的程序案例作为《Flash交互动画》的实训教学案例,循序渐进由简到难,旨在让学生初步掌握通过AS3.0的脚本语言编程实现用鼠标或键盘对动画播放的控制关键词:Flash交互动画;实训案例教学;ActionScript3.0中图分类号:G712文献标识码:A1引言(Introduction)交互动画是指在动画作品播放时支持事件响应和交互功能的一种动画[1],也就是说,动画播放时可以接受某种控制。这种交互性提供了观众参与和控制动画播放内容的手段,使观众由被动接受变为主动选择。最典型的交互式动画就是Flash动画。观看者可以用鼠标或键盘
2、对动画的播放进行控制。本文旨在通过三个循序渐进的Flash交互动画的实训案例让学生初步掌握Flash交互动画的制作方法。2实训教学内容的设计(Contentofpracticetraining)Flash交互动画实训案例内容:(1)使用软件:FlashCS4.0。(2)实训目的:初步掌握Flash交互动画制作方(3)实训时间:2周,每周28学时。三个部分,第一部分14学时,第二部分18学时,第三部分24学时(4)实训要求:通过学习能够独立完成控制Flash交互的程序。2.1使用脚本创建视差滚动这部分实训教学内容是通过鼠标点击场景中的按钮控制角色动画的左右移动。首先在Phot
3、oshop中创建一个无缝衔接的背景。然后在Flash创建一个循环原地运动的角色动画。通过脚本编程控制角色动画的左右移动,效果如图1所示。Fig.lUsesActionScripttocreatescrollingdifference核心程序代码如下[2]:FunctionmoveLayers(e:MouseEvent):void{if(e.target.name==,,forward_btnN){moveLeft=true;}else{moveRight=true;}walker一mc.play();FunctionstopLayers(e:MouseEvent):void
4、{moveLeft=false;moveRight=false;walker一mc.gotoAndStop(1);}stage.addEventListener(Event.ENTER_FRAME,timeToScroll);FunctiontimeToScroll(e:Event):void{if(moveLeft){parallax(middlegroundjnc,5);parallax(background_mc,2);walker—mc.scaleX=1;}elseif(moveRight){parallax(middleground_mc,-5);parallax
5、(background一mc,-2);walker一mc.scaleX=-1;}}Functionparallax(layer:MovieClip,speed:Number):void{if(layer.x=layer.width/2){layer.x=layer.x-layer.width/2;}layer.x-=speed;}2.2键盘定位角色第二部分的实训内容是旨在让学生们掌握除了鼠标点击控制交互之外,还可以通过键盘的按动定位角色的移动。首先制作一个场景变换的影片剪辑和一个循环原地运动的角色。通过AS3.0脚本编程控制键盘定位角色实现角色在不同的场景中来回穿梭,效果如
6、2所示[3]。Fig.2Keyboardpositioningrole核心程序代码如下:functionkeyPressedDown(e:KeyboardEvent){if(e.keyCode==37){IeftArrow=true;}elseif(e.keyCode==39){rightArrow=true;}walking—mc.play();}functionkeyPressedUp(e:KeyboardEvent)if(e.keyCode==37){leftArrow=false;}elseif(e.keyCode==39){rightArrow=false;}wa
7、lking一mc.gotoAndStop(1);}functionmoveMan(e:Event){if(leftArrow){walking—me.x-=speed;walking_mc.scaleX=-1;}if(rightArrow){walking_mc.x+=speed;walking—me.scaleX=1;}if(walking一mc.x〉=stage.stageWidth+walking_mc.width){walking_mc.x=0-walking_mc.width;currentBackdro
此文档下载收益归作者所有