我正在使用Java和使用的BufferedImages製作遊戲以將內容呈現到屏幕上。我在運行遊戲的低端機器上遇到了性能問題,所以我轉而使用速度更快的VolatileImage。除了他們實際上放慢了整個事情。Java:VolatileImage比BufferedImage更慢
使用GraphicsConfiguration.createCompatibleVolatileImage(...)創建圖像,並使用Graphics.drawImage(...)(請參見後面的鏈接以瞭解具體哪一個)來繪製圖像。它們使用雙緩衝在畫布上繪製。
有人知道這裏出了什麼問題嗎?
我已經注意到了。 – Hardcoded 2010-04-21 15:15:34
如果你在顯卡上的內存不足,它顯然不會幫助。 IIRC,'BufferedImage'有一些加速,所以差距可能不如以前那麼大。 – 2010-04-21 15:45:20
@Norswap:我真的覺得要找到一個好的答案在於找到一流的開源Java遊戲(肯定有一些)或者一些偉大的Java演示(來自「演示場景」),並試圖理解什麼他們已經完成了。我很久以前就用非常*異乎尋常的硬件(如Amiga,SNES,模式13x等)編寫遊戲和演示程序,而且我仍然不知道如何在Java中正確「推送像素」。這再次成爲Java「過度工程化」並且不必要的複雜的領域。我不會爲這裏的某個人屏住呼吸而能夠真正幫助你。 – SyntaxT3rr0r 2010-04-21 16:20:04