2017-04-02 45 views
0

我正在通過android studio開發Android遊戲,但是當我通過Bitmap.decodeResource和drawBitmap繪製移動背景圖像時,我的遊戲FPS下降到了10,這是無法玩的。有沒有其他方法可以在背景中繪製緩慢移動的圖像?我希望圖像質量仍然合理,但背景只是一些樹木在屏幕上滑動的幾張圖片。如何在android studio中加載背景圖片時減少延遲?

回答

0

我希望您每次渲染場景時都不要撥打Bitmap.decodeResource。你必須只調用一次 - 在開始的時候,當你初始化所有其他的東西:

Bitmap gameBackground=BitmapFactory.decodeResource(getResources(), R.drawable.game_background)

然後,在遊戲循環,你可以用canvas.drawBitmap(gameBackground)渲染圖像。當然,最後,在場景循環之後,您必須使用gameBackground.recycle()釋放分配的內存。

+0

當初始化遊戲面板時,我只調用一次decodeResource,但當圖片分辨率大於600x600時,它仍然是滯後的。這是否應該發生?我還有其他選項可以顯示正在移動的背景圖片嗎? –

+0

您可以嘗試將圖像放在/ res目錄下的drawable-nodpi文件夾中。通過這種方式,您的圖像將不會被重新調整大小,默認情況下需要大量內存和CPU。另一件事 - 你的形象最好是PNG。 –

+0

我認爲調整大小對我的應用程序是必要的。有沒有簡單的方法解決這個問題? Android工作室不是爲了處理高質量的圖像? –