简介:关于本文可作为相关专业等于动画论文写作研究的大学硕士与本科毕业论文等于动画论文开题报告范文和职称论文参考文献资料。
(无锡职业技术学院艺术设计系,江苏 无锡 214000)
摘 要:本文通过将三个较典型的Flash交互动画的程序案例作为《Flash交互动画》的实训教学案例,循序渐进由简到难,旨在让学生初步掌握通过AS 3.0的脚本语言编程实现用鼠标或论文范文对动画播放的控制.
关键词:Flash交互动画;实训案例教学;ActionScript 3.0
中图分类号:G712 文献标识码:A
1. 引言(Introduction)
交互动画是指在动画作品播放时支持事件响应和交互功能的一种动画[1],也就是说,动画播放时可以接受某种控制.这种交互性提供了观众参与和控制动画播放内容的手段,使观众由被动接受变为主动选择.最典型的交互式动画就是Flash动画.观看者可以用鼠标或论文范文对动画的播放进行控制.本文旨在通过三个循序渐进的Flash交互动画的实训案例让学生初步掌握Flash交互动画的制作方法.
2. 实训教学内容的设计(Content of practice training)
Flash交互动画实训案例内容:
(1)使用软件:Flash CS 4.0.
(2)实训目的:初步掌握Flash交互动画制作方法.
(3)实训时间:2周,每周28学时.三个部分,第一部分14学时,第二部分18学时,第三部分24学时.
(4)实训要求:通过学习能够独立完成控制Flash交互的程序.
2.1 使用脚本创建视差滚动
这部分实训教学内容是通过鼠标点击场景中的按钮控制角色动画的左右移动.首先在PhotoShop中创建一个无缝衔接的背景.然后在Flash创建一个循环原地运动的角色动画.通过脚本编程控制角色动画的左右移动,效果如图1所示.
核心程序代码如下[2]:
Function moveLayers(e:MouseEvent):void {
if (e.target.name 等于等于"forward_btn"){
moveLeft 等于 true,
} else {
moveRight 等于 true,
}
walker_mc.play(),
}
Function s论文范文Layers(e:MouseEvent):void {
moveLeft 等于 false,
moveRight 等于 false,
walker_mc.gotoAndS论文范文(1),
}
stage.addEventListener(Event.ENTER_FRAME, timeToScroll),
Function timeToScroll(e:Event):void {
if(moveLeft){
parallax(middleground_mc, 5),
parallax(background_mc, 2),
walker_mc.scaleX 等于 1,
} else if (moveRight){
parallax(middleground_mc, -5),
parallax(background_mc, -2),
walker_mc.scaleX 等于 -1,
}
}
Function parallax(layer:MovieClip,speed:Number):void {
if (layer.x <,等于 0){
layer.x 等于 layer.x + layer.width/2,
}else if (layer.x >,等于 layer.width/2)
{layer.x 等于 layer.x - layer.width/2,
}
layer.x -等于 speed,
}
2.2 论文范文定位角色
第二部分的实训内容是旨在让学生们掌握除了鼠标点击控制交互之外,还可以通过论文范文的按动定位角色的移动.首先制作一个场景变换的影片剪辑和一个循环原地运动的角色.通过AS 3.0脚本编程控制论文范文定位角色实现角色在不同的场景中来回穿梭,效果如图2所示[3].
核心程序代码如下:
function keyPressedDown(e:KeyboardEvent) {
if (e.keyCode 等于等于 37) {
leftArrow 等于 true,
} else if (e.keyCode 等于等于 39) {
rightArrow 等于 true,
}
walking_mc.play(),
}
function keyPressedUp(e:KeyboardEvent) {
if (e.keyCode 等于等于 37) {
leftArrow 等于 false,
} else if (e.keyCode 等于等于 39) {
rightArrow 等于 false,
}
walking_mc.gotoAndS论文范文(1),
}
function moveMan(e:Event) {
if (leftArrow) {
walking_mc.x -等于 speed,
walking_mc.scaleX 等于 -1,
}
if (rightArrow) {
walking_mc.x +等于 speed,
walking_mc.scaleX 等于 1,
}
if (walking_mc.x >,等于 stage.stageWidth + walking_mc.width){
walking_mc.x 等于 0 - walking_mc.width,
currentBackdrop++,
changeBackground(),
}else if (walking_mc.x <,等于 0 - walking_mc.width){
walking_mc.x 等于 stage.stageWidth + walking_mc.width,
currentBackdrop--,
changeBackground(),
}
}
function changeBackground(){
if(currentBackdrop>, totalNumFrames){
currentBackdrop 等于 1
}else if(currentBackdrop <, 1){
currentBackdrop 等于 totalNumFrames
}
backdrop_mc.gotoAndS论文范文(currentBackdrop),
}
2.3 360度全景模拟
第三部分的实训内容旨在让学生掌握通过动作脚本实现模拟全景展示.首先创建一个角色的360度的逐帧动画影片剪辑.使用一张圆柱形的全景图作为场景背景.为背景做一个位置移动的补间动画.使用动作脚本控制场景与角色动画360度的同步的全景展示,效果如图3所示.
核心程序代码如下:
Function setClockWise(e:MouseEvent){
moveIt 等于 -1,}
Function setCounterClockWise(e:MouseEvent){
moveIt 等于 1,
}
Function s论文范文Rotation(e:MouseEvent){
moveIt 等于 0,
}
character_mc.addEventListener(Event.ENTER_FRAME, spinObject),
function spinObject(e:Event):void {
哔哩哔哩动画:攻壳机动队第一部13 不等于恐怖分子 (TVBKT.CN|粤语动画)
Var thisFrame:Number等于character_mc.currentFrame, thisFrame +等于 moveIt,
if (thisFrame >, totalNumFrames) { thisFrame 等于 1, }
if (thisFrame <, 1)
{ thisFrame 等于 totalNumFrames, }
character_mc.gotoAndS论文范文(thisFrame),
world_mc.gotoAndS论文范文(thisFrame),
}
3. 结论(Conclusion)
通过具体形象、程序原理、程序分析等内容的讲解以及实践应用,学生可以在这门课程的实训中了解并初步掌握Flash强大的交互功能.
参考文献(References)
[1] 权英卓,王迟.交互艺术新视听[M].北京:中国轻工业出版社,2007:73.
[2] 郑伯鸿,张智龙.Flash ActionScript语法参考辞典[M].北京:中国铁道出版社,2005:110.
[3] 林德新.Flash游戏制作[M].北京:中国铁道出版社,2005:306.
作者简介:
陆 瑶(1982-),女,硕士,讲师.研究领域:动漫设计与制作.
总结:本文是一篇关于等于动画论文范文,可作为相关选题参考,和写作参考文献。
哔哩哔哩动画引用文献:
[1] 动画博士方向论文选题 动画博士论文标题怎么定
[2] 动画研究生论文选题推荐 动画研究生论文题目怎么拟
[3] 动画美学方向论文选题 动画美学论文题目怎么取