這一篇主要是因為我看了 blitting 這種做法後
想對我自己的方式做改善所進行的一些測試
首先資料來源如下
1.bitmapdata 的功能測試
2.利用 blitting 改善 movieclip 的效能(使用 Scout)
我自己測的結果如下
各 30 回ループ
draw :: 3 ms
最低速に比べて約 12500 %高速
copyPixels :: 3 ms
最低速に比べて約 12500 %高速
fillRect :: 6 ms
最低速に比べて約 6250 %高速
clone :: 61 ms
最低速に比べて約 614 %高速
new :: 102 ms
最低速に比べて約 367 %高速
merge :: 105 ms
最低速に比べて約 357 %高速
setPixel :: 225 ms
最低速に比べて約 166 %高速
setVector :: 375 ms
最低速に比べて約 100 %高速
clickで再計算
當然這個僅供參考
因為實際的部分 絕對不如 那個範例所顯示的
但是我自己看重的重點是!
單就 draw 和 copyPixels 的處理速度上!
以這個例子是同一個級別的,
所以就我自己的方法 特別改用 copyPixels 去做!(單對bitmapdata 的部分)
反而會影響效能!
更多的問題會是像下面的 blog 講的
利用 blitting 改善 movieclip 的效能(使用 Scout)
所講的.... 濾鏡 更新大小 等等的東西
那篇文章中的例子會很快 而且快的那樣明顯的原因是~
他只畫一份 然後給其他的使用! 而且是一次貼上一個區塊!
而且 bitmapdata 的更新只更新他畫的那一塊!
並不需要重新的 一塊一塊畫濾鏡的部分
所以越多 理論上是越明顯!
然而在我的 其他三篇中 寫的方式 並沒有辦法使用這個方法來做優化!
如果要做到的加速方式!
我必須去判斷哪一塊有更新 然後就更 新的部分一塊貼圖
就會有優化的效果!
但是就我自己的測試 不明顯!
所以相關的報告就不放上來了
話說這一篇也卡了兩個多月了 orz
沒有留言 :
張貼留言