2010-05-24 84 views
1

我正在嘗試(最新的)Android SDK,並注意到一些奇怪的行爲。Android:橫向模式下的幀速率下降

我寫了一個骨骼SurfaceView應用程序:Activity,SurfaceView和一個渲染線程。它實際上並沒有做任何繪畫,只是每秒寫出一次logcat的幀速率。當它以縱向模式運行時,我可以達到60 fps左右。但是,當我將其翻轉以將幀率下降到大約30fps時。

我也在LunarLender示例中測試了它,並得到了類似的結果。所有的測試都在模擬器上完成,因爲我沒有物理設備。

這是什麼一回事?我似乎無法在Google上發現任何提及,有沒有其他人經歷過這種情況?它只是一個模擬器的怪癖嗎?還是它也適用於物理硬件?

+0

您是否發現FPS在景觀中存在哪些問題? – sniurkst 2011-11-27 19:09:20

回答

0

在這裏猜測 - 在橫向模式下,渲染內容兩側是否有額外的「空白」空間?如果是這樣的話,爲了繪製屏幕就可以有效地增加處理量。不知道這是否會導致幀率下降50%,但這是可能的。

另一種猜測 - 橫向模式可能會被故意遏制,因爲它主要用於視頻觀看。沒有理由爲30fps的內容提高到60fps。組態?

+0

SurfaceView覆蓋整個屏幕(通過Activity.setContentView),如上所述,實際上沒有任何東西被繪製(儘管畫布被鎖定/解鎖)。同樣的,SDK的樣本也會發生同樣的情況,所以如果有人能證實這一點,我會認真的。從技術上講,風景與肖像具有完全相同的屏幕空間(少一點,甚至)。至於謹慎地減少fps:對視頻來說可能是有意義的,但是如何看待遊戲,在景觀上會感覺更自然?該配置是標準的開箱即用:HVGA Android 2.1。 – uj2 2010-05-24 13:54:37