2014-10-18 21 views
0

嘿傢伙我一直在java遊戲編程一段時間,我最近有一個問題。當我在java中加載一個相對較小的精靈表時,我的FPS從500變爲250,並使我的遊戲非常緩慢。如果有人知道如何讓Java遊戲變得更加緩慢並獲得更好的FPS,那就太棒了!在java中加載spritesheet時如何防止我的FPS掉線?

BufferedImage spriteSheet = ImageIO.read(new File(spriteSheetLocation)); 
    sprites = new BufferedImage[rows * columns]; 

    for (int i = 0; i < rows; i++) { 
     for (int j = 0; j < columns; j++) { 
      sprites[(i * columns) + j] = spriteSheet.getSubimage(i * width, 
        j * height, width, height); 
     } 
    } 
+3

我不會考慮250 FPS laggy ...您可能需要更改您的遊戲迭代,以不依賴於固定的迭代次數。 – icza 2014-10-18 17:13:57

+0

不要忘記發佈一些代碼:P – 2014-10-18 17:23:56

回答

0

通常開發遊戲時,你cache所有sprites(或差不多),這樣你纔剛剛開始一次加載它們。回想當時我在做遊戲開發的時候,我使用的是緩存編輯器(很容易創建你自己的,但如果你想節省時間,網上可能有很多),然後你存儲你的每個精靈在一個文件中作爲字節(序列化對象)。然後這個文件被緩存編輯器壓縮並且每個玩家都會下載一次並存儲在計算機上的某個地方(他們不知道它已經完成,它由遊戲處理)。

然後,當玩家不得不加載一個新的精靈時,它已經被緩存在電腦上,速度非常快。

相關問題