2009-11-29 22 views
2

我正在寫我的第一個flash as3遊戲引擎,並且有一個函數調用讓我擔心性能。fillRect,性能?

每一幀我填充我的「渲染位圖」與黑色使用fillRect函數之前我呈現其他精靈。

然後只是爲了好玩,我跳過了fillRect函數,看看我會獲得多少性能,並且在不調用fillRect的情況下,我的Alcon FPS計數器最大值爲112fps,當我調用它時,精靈。

所以我的問題是,有什麼辦法來優化或更快的方式來填充屏幕的顏色?

乾杯!

回答

0

有什麼理由不能在畫布背後放上一個永久性的黑色物體(或者你正在畫的任何東西),然後在做精靈畫之前做this.graphics.clear()

這就是我的建議。讓繪製精靈的組件變得透明,並且每次都重置它。

+0

他繪製的位圖,以便將無法工作。 – grapefrukt 2009-11-29 21:20:17

1

我很確定fillRect是重置BitmapData對象的最快方法。我不確定alcon fps計數器是如何工作的,但是填充矩形應該少於一毫秒,除非你的位圖是巨大的或者你的系統是舊的。

(我假設你正在做某種位的blitting的這就是爲什麼你需要擦拭位圖每一幀?)