2
每當我想要轉換到某個場景時,在SKTransition
甚至開始之前需要幾秒鐘的時間。遊戲開始之前是否可以初始化所有場景?如何初始化Sprite Kit中的所有場景?
NewScene *newScene = [NewScene sceneWithSize:self.size];
SKTransition *reveal = [SKTransition moveInWithDirection:SKTransitionDirectionUp duration:0.5];
reveal.pausesIncomingScene = NO;
[self.view presentScene:newScene transition:reveal];
我已經didMoveToView
試過這還有:
@implementation NewScene
-(id)initWithSize:(CGSize)size {
if(self = [super initWithSize:size]) {
// Load a bunch of stuff like this:
SKSpriteNode *menuButton = [SKSpriteNode spriteNodeWithImageNamed:@"mainMenu"];
menuButton.position = CGPointMake(self.frame.size.width/2,self.frame.size.height/4);
menuButton.name = @"menuButton";
[self addChild:menuButton];
[menuButton setScale:0.8];
}
}
我怎樣才能確保我的雪碧套件遊戲運行流暢?
編輯: 事實證明,問題是我不斷讓主線睡覺淡出音樂。我已將所有音頻方法在後臺運行並且現在工作正常。
你能告訴你用「加載一堆東西」的評論取代了什麼?如果需要,您不應該在創建場景時遇到任何問題,而且如果是的話,您應該重新考慮處理數據/加載資源的方式。您可以從儘可能多的異步處理開始,並[預加載紋理](https://developer.apple.com/Library/ios/documentation/SpriteKit/Reference/SKTexture_Ref/Reference/Reference.html#//apple_ref/ OCC/CLM/SKTexture/preloadTextures:withCompletionHandler :)。 – 2014-08-27 11:52:55
@ 0x7fffffff - 編輯我的文章。我嘗試了預加載紋理(在Stack Overflow上使用了另一個答案),但結果沒有改變。我可能在新場景中加載了錯誤的紋理。也許你可以告訴我如何在新場景中加載紋理? – Deeyennay 2014-08-27 12:10:36