我開發了一個跨平臺的AIR應用程序,嚴重地在移動設備上執行的動畫/使用矢量圖形而不是位圖資源。採用cacheAsBitmapMatrix/cacheAsBitmap會更好,何時何地分配得當,但仍不如使用位圖資產那麼快。我試圖在運行時將bitmapData.draw()矢量圖形轉換爲位圖對象,並改爲對位圖對象進行動畫處理,但是這隻能執行大約和(或者甚至完全相同)只是緩存矢量圖形作爲位圖。ActionScript - 在運行時光柵化矢量圖形?
Flash Professional 5.5 UI現在可以將矢量圖形轉換爲位圖資源,但是可以在運行時執行此操作嗎?是否有可能實際使用Rasterize()例程將編程繪製的矢量圖形,甚至可編輯的文本轉換爲運行時的位圖以獲得最佳的動畫性能,特別是在移動設備上?
如果您將它們全部存儲在一個數組中,您實際上不需要將它們放入精靈表中。你可以從數組中訪問它們,例如動畫[「zombie_walk」] = zombieWalkFrames - 你的動畫幀數組。如果內容創建的方式通常只使用精靈表。如果它是矢量動畫片段作爲源代碼,最好只是堅持使用數組並以這種方式進行管理。 – prototypical 2011-05-20 00:13:33
我沒有做任何框架腳本。它都是編程創建的矢量圖形(繪圖API)和Tweener for animation。是的,我正在旋轉和縮放圖形 - 例如,屏幕上有一個正方形。觸摸正方形會使其浮到舞臺上方,稍微放大並取代它的投影。我明白向矢量圖形添加濾鏡會自動將圖形緩存爲位圖。縮放/旋轉矢量圖形(無濾鏡)假定比縮放/旋轉位圖快?此外,我發佈到AIR 2.5並且還沒有試用AIR 2.6 – TheDarkIn1978 2011-05-20 00:55:58
應用過濾器的多個對象可以四處移動,更改形狀,旋轉或真正做除靜態以外的任何操作都會對性能造成嚴重打擊 - 無論是什麼它們的類型(位圖/矢量)。 – Marty 2011-05-20 01:03:01