1
SKAction *ghostAnimationAction = 
[SKAction animateWithTextures:ghostFrames timePerFrame:0.1];

SKAction *ghostDelayAction = 
[SKAction animateWithTextures:@[[SKTexture textureWithImageNamed:@"Ghost_"]]     
timePerFrame:1.0];

SKAction *ghostAnimationSequence = 
[SKAction sequence:@[ghostAnimationAction, ghostDelayAction]];

SKAction *repeatGhostAnimationSequence = 
[SKAction repeatActionForever:ghostAnimationSequence];

オブジェクトで構成されたフレームのアニメーション シーケンスがNSMutableArrayありSKTextureます。そのシーケンスが再生されたら、すべてを繰り返す前に、静止フレームを 1 秒間フォールドしたいと思います。上記のコードは機能しますが、一定期間フレームを保持することを指定する唯一の方法はanimateWithTextures:timePerFrame:、単一のテクスチャ配列を使用して提供することです。SKAction欠落している期間、単一の画像を表示する別の方法はありますか。

4

1 に答える 1

2

これら 2 つのアクションの両方を含む新しい SKAction を作成できます。スプライト キット プログラミング ガイドの「他のアクションを実行するアクションの作成」セクションを参照してください。ノードへのアクションの追加

SKAction メンバーの waitForDuration: も見てみましょう。これにより、単一のテクスチャを渡すことを回避できる場合があります。最初の SKAction でアニメーションを実行してから、2 番目の SKAction で waitForDuration を実行します。次に、囲んでいる SKAction は、これら 2 つのアクションを永久に、または必要なだけ実行します。

于 2013-09-26T12:43:13.743 に答える