2015-10-15 49 views
0

我的遊戲提供了「選擇級別」功能,允許用戶選擇想玩的級別(您猜對了)。使用SpriteKit在Objective-C中預加載遊戲數據

我處理這個函數的方式是加載所有關卡信息並通過滾動幻燈片顯示出來。該引擎工作正常,但我得到的問題是一個無聊的「滯後」(約7秒),在「Choose Level」單擊後。我敢肯定,這是對所有的應用程序是加載的信息:

  • 所有每個級別的預覽圖像(52級)
  • 讀取plist文件和加載數據
  • 計算的百分比完成通過顯示每個級別的進度條

我剛剛創建了我的「加載」部分,但我真的不知道如何處理它。任何幫助?

注:我使用SpriteKit和所有的圖像是一個圖譜圖像內的第一

回答

0

第一件事,嘗試通過使用分析,讓您的加載時間縮短。

至於你的問題: 加載微調將是最合適的。您可以將其添加到選擇關卡的源視圖或顯示中間屏幕,或者在準備好之前在遊戲場景中顯示微調器。

我不建議在選擇它之前加載該級別,因爲這是太多工作。

+0

我有一個問題......如果我使用加載微調創建中間屏幕,是否也會阻止它?我發現有人說通過多線程來執行這個動作。這樣對嗎? – user3582537

+0

你永遠不應該在主線程上執行你的資源加載。沒有加載微調器不需要主動工作,時間延遲不可忽略,但是很小。我的建議是在遊戲屏幕上疊加一層,然後在遊戲屏幕準備就緒後移除。在主線上加載遊戲會降低遊戲速度。請使用宏中央調度來利用線程。 –