Tweener 有無用武之地的時候?
filed in Flash on Sep.13, 2008 (3,121次檢視)
Tweener 雖然幫我們很方便地做到漂亮的效果,但是在某些情況下,Tweener卻無用武之地了。主要原因就是電腦的計算效能是有上限,如果很頻密地或是一次過使用大量Tweener,Flash 就會不勝負荷而出現「跳格」的情況了。本來想要流暢的效果,到頭來卻有反效果呢…
看看以下例子,stage上有500個圓形,當你scroll mouse時,圓形的scaleX及scaleY是用Tweener來改變的。由於MOUSE_WHEEL這個事件,會因為你捲動mouse時頻密地呼叫,因此電腦不勝負荷了。
要解決這個問題,我們唯有放棄Tweener。沒有Tweener如何可以達到流暢的tweeing呢? 很簡單,不知大家記不記得我在Lesson 2中說過一個舊式的tweening方法? 現在重溫一次吧﹕
myMc.x += (targetX – myMc.x) / FACTOR;
//targetX 是目標的X座標
//FACTOR是一個constant,數字愈大,easing的時間愈長
所以解決辦法是,當mouse scroll時,我們只要改變圓形scale的目標數值,然後在ENTER_FRAME事件中,利用以上tweening formula去改動圓形的scaleX及scaleY。方法很簡單,也十分有效呢~
下載所有例子: Tweener Tutorial Examples (1.8Mb)
結語:
到了這裡,我的Tweener教學也完結了。希望大家做Flash的時候,能夠想多一步,盡量使用Tweener美化你的RIA。另一方面,你也要知道Flash的能力是有上限的,小心地設計及優化每一個animation的程式碼。能做到以上兩點,你定可成為出色的RIA Developer!
>> 看其他教學

September 23rd, 2008 on 6:49 pm
Frog您好~
最近在學習Tweener…
今天無意間搜尋到您的blog…
看到許多Tweener的中文介紹…
真是太棒了!!
下次有如有Tweener的問題…
不知是否能請教您… ^^”
再次謝謝您的教學介紹~謝謝~
September 23rd, 2008 on 8:57 pm
當然可以啦~你可以寄去我的電郵地址的: stanleyfok@gmail.com
Thanks for your support. 希望之後可以出一個papervision3D的tutorial
September 24th, 2008 on 10:34 pm
支持是一定要的!!
Tweener的相關中文教學在網路上真的是很少,
雖然我現在還是用AS2在寫,
不過對於有些中文說明對我來說是非常的有幫助,
( 本人英文、數學都不好…呵呵 )
很期待您的新教學喔~ ^^
September 25th, 2008 on 12:44 am
幸好在AS2及AS3中,Tweener的syntax 應該是99%相同!
我的中文不好,很多都是香港式的中文,中英夾雜,不要見怪哦!
October 14th, 2008 on 5:31 pm
感觉myMc.x += (targetX – myMc.x) * FACTOR的形式比较好理解
October 16th, 2008 on 10:50 pm
可是用這個方法,你的code會很複雜~
December 19th, 2008 on 12:13 pm
這個blog真係係直得支持!! 真係好少香港人咁有heart去寫一些as野. 有的都是好皮毛. 我也正在學習as中(以前都有用, 但看完你寫的falsh programmer的陋習後, 我都要重新學習了), 希望多多指教
December 23rd, 2008 on 2:15 am
謝謝你的支持哦!
有空時我會補返一些Flash的tutorial的!!!
February 25th, 2009 on 11:09 am
用GTween会好点吗?