Flash動畫—單擺的制作教程_Flash教程
推薦:Flash動態(tài)緩沖圖片導(dǎo)航制作詳解緩沖公式在制作特效中非常有用,聞名的三星導(dǎo)航菜單就用到了此公式。現(xiàn)在許多網(wǎng)站出盡風(fēng)頭,其中緩沖導(dǎo)航是其一大亮點(diǎn)。本文以一德國網(wǎng)站的導(dǎo)航為例,詳解緩沖
想起當(dāng)初作這個動畫時,真是不知如何下手,所以,這是一篇獻(xiàn)給初學(xué)者的教程的單擺動畫的制作,應(yīng)該要解決兩個方面的問題:
一、單擺本身的制作,這一點(diǎn)只要用好flash的繪圖工具即可
二、單擺振動,這一點(diǎn)將是教程的重點(diǎn)也是難點(diǎn)
下面就先解決第一個問題,制作單擺(這一步的制作注重注冊點(diǎn)的選擇)首先要弄清,單擺有三部分組成:擺線、擺球、懸掛點(diǎn)(天花板)
(一)、擺線:
1、選取工具區(qū)的線條工具,線條粗細(xì)默認(rèn),在主場景按住Shifi鍵向下畫一條適當(dāng)長度的線段。
2、選中線段,右鍵—轉(zhuǎn)化為元件-影片剪輯,其參數(shù)按圖中設(shè)置,把它轉(zhuǎn)化為影片剪輯

�。ǘ[球:
1、選取工具區(qū)的橢圓工具,按住Shifi鍵,在主場景畫出一個圓,
2、打開主場景右邊的選項(xiàng)欄,選擇顏色-混色器,設(shè)置如圖,

為擺球選擇一種填充色(當(dāng)然你也可以在左邊的顏色選取區(qū)選擇),選擇工具選取區(qū)的油漆桶工具,為擺球填色
3、選中小球,右鍵—轉(zhuǎn)化為元件-影片影剪輯,其參數(shù)按圖中設(shè)置,把它轉(zhuǎn)化為影片剪輯

4、為它加點(diǎn)效果吧:選中小球,打開工作區(qū)下方的濾鏡選項(xiàng)(flash8.0),加點(diǎn)投影效果,設(shè)置如圖

效果如圖

(三)懸掛點(diǎn)(天花板thb)
選取工具區(qū)的線條工具,線條粗細(xì)默認(rèn),在主場景按住Shifi鍵水平畫一條適當(dāng)長度的線段作為天花板,同樣按住Shifi鍵畫一條斜向的線段,利用復(fù)制、粘貼功能,作出許多斜線,組合成天花板的示意圖,選中這些線段,右鍵—轉(zhuǎn)化為元件-影片剪輯,其參數(shù)按圖中設(shè)置,

把它轉(zhuǎn)化為影片剪輯,效果如圖,

至此,基本的元件制作完成,接下來是組合單擺了:
1、刪除主場景中的所有元件,在第一幀先拖人擺線,再拖人擺球(目的是讓擺球在擺線上層),調(diào)整位置,并在其屬性欄中分別命名為bq、bx,如圖

2、同時選中擺線、擺球,右鍵—轉(zhuǎn)化為元件-影片剪輯,其參數(shù)按圖中設(shè)置,把它轉(zhuǎn)化為影片剪輯,做成單擺,

再把天花板元件拖入,組成完整的單擺,效果如圖

單擺的制作到此結(jié)束(喝口水先)
接下來解決第二個問題,讓單擺動起來
這里要用到物理的單擺周期公式 和振動方程x=Acos(ωt α),但我們知道,單擺的振動實(shí)際是在一段圓弧上進(jìn)行的,也就是說,在一段圓弧上運(yùn)動同時其x要滿足振動方程x=Acos(ωt α),如何實(shí)現(xiàn)呢,先看一個圖

物理學(xué)里有一個要求,那就是單擺擺動的圓心角不能太大,一般不超過10度,否則就不是簡諧運(yùn)動,據(jù)此,我們處理的時候干脆把圓弧(BDC)當(dāng)作直線(BOC)處理,好,要害步驟來了,從圖中可知,單擺擺過角度BAO時,水平方向的距離為BO,對應(yīng)的角度b=arcsin(BO/AB),AB為擺長,x=BO,而這個就是單擺所要旋轉(zhuǎn)的角度,好了,我們可以為單擺加代碼了
1、把單擺所在的層命名為單擺吧
2、新加兩層。一層命名按鈕,用來放控制按鈕,一層命名As,在As層加入代碼
//初始化:a0為初相,A為振幅,g為重力加速度
a0 = 90;
t = 0;
A = 20;
g = 9.8;
//l為擺線的長度
l = db.bx._height;
//周期T為單擺的周期公式
T = 2*Math.PI*Math.sqrt(l/g);
//進(jìn)入幀要執(zhí)行的動作
this.onEnterFrame = function() {
//先作一個判定,假如m=1,再執(zhí)行,這一步是為了控制他而作的
if (m == 1) {
//振動方程
x = A*Math.cos(2*Math.PI*t/T a0);
//用反三角函數(shù)算出旋轉(zhuǎn)的角度
b = Math.asin(x/l);
//每執(zhí)行一次函數(shù),t加0.5(經(jīng)驗(yàn)值)
t = 0.5;
//把單擺旋轉(zhuǎn),由于反三角函數(shù)算出的是弧度,故把它轉(zhuǎn)換為角度
db._rotation = b*180/Math.PI;
}
};
這樣,測試時單擺肯定時不動的,因?yàn)閙的值沒有定義,我們必須在按鈕層拖入兩個按鈕:窗口-公用庫-按鈕,自己選吧,在控制開始的按鈕上加入代碼
on (press) {
m = 1;
}
在控制停止的按鈕上加入代碼
on (press) {
m = 0;
}
大功基本構(gòu)成,附上源文件
但實(shí)際上我們還希望能改變其擺長L,改變g,這時我們可以再作一個可移動的按鈕,這里我不想羅嗦了,直接從庫里拖一個出來就夠了:窗口-公用庫-按鈕,自己找吧(我選的是fader – round按鈕),把他們放在按鈕層,這時這個按鈕已在我們源文件的庫中有了,選中它,點(diǎn)右鍵—直接復(fù)制,復(fù)制出另一個,也拖人按鈕層,這時,我們就有了兩個可以移動的按鈕,用來改變L和g,由于我選的是fader – round按鈕,它有一個標(biāo)簽,雙擊按鈕,進(jìn)入改變其標(biāo)簽名,結(jié)果如圖

還沒有完,因?yàn)樗麄兌紱]有名字呢,選中L按鈕,在屬性欄命名為lk(控制L的意思),雙擊lk按鈕,進(jìn)入下一層,看其屬性,你會發(fā)現(xiàn)滑塊是有名字的,如我選的是fader – round按鈕,滑塊名為knob,改為lk0好了同理,選中g(shù)按鈕,命名為gk(控制g的意思),雙擊gk按鈕,進(jìn)入下一層,選中滑塊改為gk0,快了,別忘了,改你的代碼哦
//初始化
a0 = 90;
t = 0;
A = 20;
m = 0;
db._rotation = 0;
this.onEnterFrame = function() {
//把控制按鈕lk中的lk0按鈕的y坐標(biāo)+80作為擺長變化的百分比,由于lk0按鈕的y坐標(biāo)初時值是0,故加80,否則開始擺長就為0了
l = lk.lk0._y 80;
//把db中的bx電影剪輯在其y方向上伸縮L倍
db.bx._yscale = l;
//把擺線的長度賦值給h
h = db.bx._height;
//擺球的位置也相應(yīng)變化,其位置應(yīng)該在擺線的注冊點(diǎn)往下+擺線的長度的地方
db.bq._y = h db.bx._y;
//把控制按鈕gk中的gk0按鈕的y坐標(biāo)+9.80作為g,由于gk0按鈕的y坐標(biāo)初時值是0,故加9.80,使其初始值為9.80,否則開始g就為0了
g = gk.gk0._y/10 9.8;
//單擺的周期公式
T = 2*Math.PI*Math.sqrt(l/g);
//假如m=1執(zhí)行
if (m == 1) {
//振動方程
x = A*Math.cos(2*Math.PI*t/T a0);
//用反三角函數(shù)算出位移為x對應(yīng)旋轉(zhuǎn)的角度
b = Math.asin(x/l);
//時間改變
t = 0.5;
//把單擺旋轉(zhuǎn)b*180/Math.PI,原因是b是弧度制的,把它化成角度制
db._rotation = b*180/Math.PI;
}
};
分享:Photoshop與Flash合作制作模糊漸變動畫在一些片頭動畫里我們經(jīng)常能看到很炫的模糊效果,極具視覺沖擊。高質(zhì)量的模糊效果大多利用Photoshop處理后才導(dǎo)入flash中進(jìn)行制作。其實(shí),在Flash中也可以利用其
- 相關(guān)鏈接:
- 教程說明:
Flash教程-Flash動畫—單擺的制作教程
。