Re: [問題] flash一問
其實 Flash 要說它比較耗資源的確是沒有錯
不過可以從它本身層面跟開發者(含設計)的角度來探討
首先把圖形粗分為點陣圖跟向量圖
點陣圖就是一張圖,若瀏覽器檢視比例放大縮小會失真(此失真非指因壓縮而導致)
而向量圖則是記錄錨點,開啟後再由cpu運算並不斷重繪,不失真
點陣圖的缺點是比較耗容量,讀取比較久
(同樣一個單純黑色圓形,png可能要5k,而flash畫的swf可能1k不到)
優點是點陣圖比較不耗 cpu 運算(當然如果圖片很大又快速切換的時候cpu也會飆)
向量圖的話優點是容量小
但是缺點是需用cpu計算
那在開發上會有什麼問題呢?
假設按了鍵盤左右鍵會播放一個人物跑步的動畫
然後那個人物雖然在畫面上只會佔大概寬30px高70px,但設計卻用了2000個錨點
在 HTML5 + Javascript 的情況下
沒有差,因為會把人物每個動作製成圖片弄成圖表(SpriteSheet)
再用程式指定按下右鍵後,以0.1秒的速度從圖表第 1 張 ~ 第 3 張在canvas重複播放
在 Flash 上
則是改成變換影格,並且由cpu不斷去針對那2000個錨點不斷的做運算和重繪
而程式方面(下面以AS3來說)
今天你把一個物件 new 到場景上
並且給它事件偵聽,但當你把它 removeChild 掉,事件還會留著
更不用說有時候用了 ENTER_FRAME(會依據設定的FPS來做偵測)
假設 fps 設定 24,則 1 秒鐘會偵測 24 次,設定 60 則是 1 秒偵測 60 次
而最恐怖的原罪來了,flash 做些小東西其實真的還挺方便的
但方便相對也就代表容易讓更多人來開發,但開發者的心態和專業度你永遠不知
一、習慣不良
像上面說的,因為人物很小,其實設計上不用到細節非常的多
甚至可能不到100個錨點就能解決,但卻在 Illustrator 把人放超大在畫
結果超爆走
或是有些人寫 flash 程式,會指定監聽,卻不會把它移除
不斷累積不斷累積下來影響深遠
flash場景可能才 1000*620,要匯一張圖進來當背景
結果卻匯了一張 3xxx * 2xxx 的圖,沒有事先縮成實際需要使用的大小
然後到 flash 裡面才縮,這個非常恐怖
就算是用 jQery 套一個輪播的套件
可是卻輪播 3xxx * 2xxx 的圖,用css硬縮大小
非常痛非常痛
二、自我要求度不足
除了程式邏輯上的不足外,對於程式語言也不夠了解
同樣都是陣列,Array 跟 Vector 使用上有什麼不同
不預設陣列大小會不會造成效能影響,影響多少
內建的排序效能跟自己寫的效能哪個好
按鈕、影片片段、圖像元件差別在哪,什麼時候用哪個比較恰當
三、懶得學習新知
當你今天畫了遊戲用場景或網頁背景之類
其實大部份沒什麼在動,flash 後來有一個叫作「快取成點陣圖」的功能
可以把那部份設定成點陣圖顯示,以避免cpu不斷運算
但是有些人舊版用習慣了,改成新版也不會去瞭解新版有什麼好玩意
依舊一招走天下
四、方便啊方便
一些濾鏡特效能夠方便使用,參數調一調就好
而濾鏡是會吃效能的
一般在做網頁的時候,要嘛是調用css或是圖片切換展現一些效果
如果用javascript是程式設計師讓按鈕飛來飛去變來變去
效能端看程式設計師的能力
但是在flash裡,設計也可以一展長才
這時候就要看設計是不是也具有對flash動畫的體認和瞭解做出更不耗效能的動畫
要注意程式跟設計兩方面的能力,危險度加倍
五、唉呀,反正我電腦跑得順就好了嘛
這一點最嚴重,有這一點的人上面4點就全包了
尤其應該有很多大大身邊有人接觸過 flash
會覺得像樂高一樣隨便疊一疊就會有東西出來
不會去考慮要怎麼樣可以更順暢更漂亮
當別人問:「怎麼這麼 lag」的時候,就會回「啊就 flash 啊沒辦法」
完全沒想過可能自己本身也有問題
就像有些人會說「VB 執行速度比 C 慢啦~」
有人聽了之後用 VB 寫了個踩地雷之後,發現把周遭沒有炸彈的格子開啟速度很慢
用肉眼都看的出來是慢慢跑,於是就說「果然VB很慢啊」一樣的道理
總結:
若都是很厲害的開發者,Flash絕對會比HTML5耗資源,因為它是向量的
就算都在裡面改成用點陣圖呈現,但中間多了一層 player,勢必會多花一點效能
但之後若許多人投入HTML5之中,樹多必有枯枝,人多必有??
有可能也會像現在 flash 的囧境一般
以下放上兩個 HTML5 的連結:
多方塊旋轉:http://voxelrain.appspot.com/
遊戲:http://people.opera.com/emoller/gremlins/
HTML5 的發展,一方面也要看往後各瀏覽器對 Javascript 和 CSS3 的支援度
以及開發上的一致性
不過手機上有沒有flash我倒覺得還好
平板的話還是希望能有 flash,比較不用擔心會有純 flash 網站看不到QQ
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.168.94.82
推
04/04 10:40, , 1F
04/04 10:40, 1F
→
04/04 10:40, , 2F
04/04 10:40, 2F
→
04/04 10:41, , 3F
04/04 10:41, 3F
→
04/04 10:42, , 4F
04/04 10:42, 4F
→
04/04 10:43, , 5F
04/04 10:43, 5F
→
04/04 10:43, , 6F
04/04 10:43, 6F
推
04/04 12:27, , 7F
04/04 12:27, 7F
→
04/04 12:27, , 8F
04/04 12:27, 8F
→
04/04 12:27, , 9F
04/04 12:27, 9F
→
04/04 12:27, , 10F
04/04 12:27, 10F
推
04/04 12:35, , 11F
04/04 12:35, 11F
→
04/04 12:35, , 12F
04/04 12:35, 12F
→
04/04 12:35, , 13F
04/04 12:35, 13F
推
04/04 12:38, , 14F
04/04 12:38, 14F
→
04/04 12:38, , 15F
04/04 12:38, 15F
推
04/04 12:48, , 16F
04/04 12:48, 16F
→
04/04 12:48, , 17F
04/04 12:48, 17F
→
04/04 12:49, , 18F
04/04 12:49, 18F
→
04/04 12:49, , 19F
04/04 12:49, 19F
→
04/04 12:52, , 20F
04/04 12:52, 20F
→
04/04 12:53, , 21F
04/04 12:53, 21F
→
04/04 12:54, , 22F
04/04 12:54, 22F
推
04/04 13:06, , 23F
04/04 13:06, 23F
推
04/04 16:50, , 24F
04/04 16:50, 24F
討論串 (同標題文章)