天天看點

Fireworks MX 2004 制作簡單動畫 飛鳥翅膀煽動的動畫

Flash如何制作飛鳥

概述:

飛鳥給我們直覺的感覺是有一對翅膀的在煽動,還有一張嘴在鳴叫。

是以我們可以主要表現這兩點動畫,可以做三個層,一個層放翅膀,一個層放嘴 一個層放身

做兩個影片剪輯

一個嘴動

一個是翅膀煽動

最後做一個鳥身的圖檔元件

以上所有放置在同一場景,加個動作補間 即可!!!

步驟:

1.建立一個Flash文檔,單擊“屬性”面闆中的“尺寸”按鈕,打開“文檔屬性”面闆設定場景大小為550px 450px,幀頻為20fps。

2.按快捷鍵Ctrl+F8建立一個名為“背景”的影片剪輯元件。按快捷鍵Ctrl+R打開“導入”面闆導入一幅可以覆寫場景的山水圖檔。

3.按快捷鍵Ctrl+L打開“庫”面闆,把“圖檔”元件拖拽到“場景1”中。點選場景中的“圖檔”元件,按快捷鍵Ctrl+K打開“對齊”面闆,“相對于舞台”按鈕,再“左對齊”和“上對齊”按鈕。這樣很容易就使“圖檔”元件覆寫住整個場景了。

4.建立一個“飛鳥”影片剪輯元件。該元件的圖層設定“左翅”層和“右翅”層利用“形狀漸變”運動讓兩條線段可以模拟鳥翅膀煽動的運動。打開“洋蔥皮”指令可以很清楚的看到了.在各幀中,線段隻是角度不一樣,以産生運動的效果。設定線段角度的變化可以按快捷鍵Ctrl+T打開“變形”面闆進行輔助設定。

5.按快捷鍵Ctrl+L打開“庫”面闆。右鍵“庫”中的“飛鳥”元件,單擊“”指令打開“屬性”面闆,(點選為動作腳本導出、在第一幀導出)。使用“屬性”面闆定義影片剪輯元件後,可以直接利用代碼調用元件,而不必把元件拖拽到場景中。

6.回到“場景1”,點選“圖層 1”的第1幀,按F9鍵打開“動作”面闆,輸入如下代碼:

// 飛鳥動畫

damp = .95;

numbirds = 30;

{

bird = attachMovie("bird", "bird"+i, i);

bird._x = Math.random()*350+20;

bird._y = Math.random()*300+20;

bird.vx = Math.random()*10-5;

bird.vy = Math.random()*10-5;

bird.k = Math.random()*.0001+.0003;

bird.gotoAndPlay(Math.round(Math.random()*20));

}

onEnterFrame = function () {

var totx = 0;

var toty = 0;

bird = _root["bird"+i];

totx += bird._x;

toty += bird._y;

avgx = totx/numbirds;

avgy = toty/numbirds;

bird.vx += (avgx-bird._x)*bird.k;

bird.vy += (avgy-bird._y)*bird.k;

bird.vx += Math.random()-.5;

bird.vy += Math.random()-.5;

bird.vx *= damp;

bird.vy *= damp;

targAngle = Math.atan2(bird.vy, bird.vx)*180/Math.PI;

diff = targAngle-bird._rotation;

if (diff-180) {

diff += 360;

if (diff180) {

diff -= 360;

bird._rotation += diff*.2;

bird._x += bird.vx;

bird._y += bird.vy;

7.為了使該動畫更有趣些,我們在以上的代碼下,再添加如下代碼:

// 滑鼠動作

function drawToPoint(){

for(i=0;inumbirds;i++){

bird=_root["bird"+i];

bird.vx+=(_xmouse-bird._x)*bird.k*100;

bird.vy+=(_ymouse-bird._y)*bird.k*100;

繼續閱讀