999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

《Flash交互動畫》實訓教學實踐

2015-04-29 00:00:00陸瑤
軟件工程 2015年1期

摘 要:本文通過將三個較典型的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所示。

Fig.1 Uses ActionScript to create scrolling difference

核心程序代碼如下[2]:

Function moveLayers(e:MouseEvent):void {

if (e.target.name ==\"forward_btn\"){

moveLeft = true;

} else {

moveRight = true;

}

walker_mc.play();

}

Function stopLayers(e:MouseEvent):void {

moveLeft = 1;

moveRight = 1;

walker_mc.gotoAndStop(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]。

Fig.2 Keyboard positioning role

核心程序代碼如下:

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 = 1;

} else if (e.keyCode == 39) {

rightArrow = 1;

}

walking_mc.gotoAndStop(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.gotoAndStop(currentBackdrop);

}

2.3 360度全景模擬

第三部分的實訓內容旨在讓學生掌握通過動作腳本實現模擬全景展示。首先創建一個角色的360度的逐幀動畫影片剪輯。使用一張圓柱形的全景圖作為場景背景。為背景做一個位置移動的補間動畫。使用動作腳本控制場景與角色動畫360度的同步的全景展示,效果如圖3所示。

Fig.3 Panoramic simulation

核心程序代碼如下:

Function setClockWise(e:MouseEvent){

moveIt = -1;}

Function setCounterClockWise(e:MouseEvent){

moveIt = 1;

}

Function stopRotation(e:MouseEvent){

moveIt = 0;

}

character_mc.addEventListener(Event.ENTER_FRAME, spinObject);

function spinObject(e:Event):void {

Var thisFrame:Number=character_mc.currentFrame; thisFrame += moveIt;

if (thisFrame > totalNumFrames) { thisFrame = 1; }

if (thisFrame < 1)

{ thisFrame = totalNumFrames; }

character_mc.gotoAndStop(thisFrame);

world_mc.gotoAndStop(thisFrame);

}

3 結論(Conclusion)

通過具體形象、程序原理、程序分析等內容的講解以及實踐應用,學生可以在這門課程的實訓中了解并初步掌握Flash強大的交互功能。

參考文獻(References)

[1] 權英卓,王遲.交互藝術新視聽[M].北京:中國輕工業出版社,

2007:73.

[2] 鄭伯鴻,張智龍.Flash ActionScript語法參考辭典[M].北京:中

國鐵道出版社,2005:110.

[3] 林德新.Flash游戲制作[M].北京:中國鐵道出版社,2005:306.

作者簡介:

陸 瑤(1982-),女,碩士,講師.研究領域:動漫設計與

制作.

主站蜘蛛池模板: 日本在线视频免费| 亚洲人成人伊人成综合网无码| 亚洲精品国产乱码不卡| 91丝袜美腿高跟国产极品老师| 成人一级免费视频| 999福利激情视频| 中文字幕无线码一区| 国产成人夜色91| 伊人精品视频免费在线| 谁有在线观看日韩亚洲最新视频 | 99久视频| 欧美激情综合一区二区| 亚洲性影院| 国产黄色视频综合| 国产人在线成免费视频| 婷婷六月激情综合一区| 午夜无码一区二区三区| 日韩视频免费| 72种姿势欧美久久久久大黄蕉| 美女毛片在线| 精品国产成人av免费| 欧美日韩亚洲国产主播第一区| 亚洲自偷自拍另类小说| 亚洲a级毛片| 国产黑丝一区| 国产成人精品第一区二区| 一级毛片基地| 一级毛片网| 亚洲男人的天堂在线观看| 不卡午夜视频| 欧洲av毛片| 国产91av在线| 日韩精品成人网页视频在线| 欧美不卡视频一区发布| 国产一区二区免费播放| 国产精品九九视频| 国产成年无码AⅤ片在线| 国产在线观看99| 欧美亚洲综合免费精品高清在线观看| 网久久综合| 日韩成人午夜| 国产一区二区人大臿蕉香蕉| 欧美成人精品在线| 91成人在线观看视频| 亚洲一区国色天香| 色久综合在线| 丝袜久久剧情精品国产| 欧美亚洲日韩中文| 婷婷综合缴情亚洲五月伊| 制服丝袜无码每日更新| 亚洲av成人无码网站在线观看| 日韩高清成人| 免费在线观看av| 精品撒尿视频一区二区三区| 特级欧美视频aaaaaa| 99精品在线视频观看| 国产精品任我爽爆在线播放6080| 91小视频版在线观看www| 欧美日韩精品一区二区在线线| 成人福利一区二区视频在线| 性视频一区| 亚洲欧美日本国产专区一区| 99在线视频免费观看| 国产成+人+综合+亚洲欧美| 久久影院一区二区h| 全免费a级毛片免费看不卡| 国产小视频a在线观看| 亚洲国产日韩视频观看| 国产成人综合亚洲欧美在| AV在线天堂进入| 蜜臀AVWWW国产天堂| 在线欧美一区| 亚洲精品第一在线观看视频| 免费jizz在线播放| 国产在线欧美| hezyo加勒比一区二区三区| 日本欧美视频在线观看| 福利小视频在线播放| 欧美中文字幕一区二区三区| 亚洲人成网7777777国产| 在线观看无码a∨| 国产黄色视频综合|