2016-04-26 10 views
0

私はXcodeでゲームを終えたばかりで、レベルが完了したらノード上にあるアニメーションは単純なSKActionのアニメーションをフェードアウトしています。 Swift Via Cocoapodsを使ってアニメーションを単一のビューアプリケーションに組み込むことができますが、私はそれらをSpriteキットゲームに追加しますか?アニメーションを振る、アニメーションをバウンスするなどのアニメーション。非常に幅広く初心者の質問ですが、私は知りたいのです。ありがとうございました。Xcode、SpriteKit:複雑なアニメーションを組み込むにはどうすればいいですか?

答えて

0

必要なアニメーションの種類と、それらがどのようにノードに適用されているかによって異なります。

ノードに適用する単純なシェイクアニメーションでは、SKActionを使用できます。

let someNode = SKSpriteNode(imagedNamed: "SomeNode") 
addChild(someNode) 

let rotateActionOne = SKAction.rotateByAngle(degToRad(-3.0), duration: 0.1) 
let rotateActionTwo = SKAction.rotateByAngle(0.0, duration: 0.1) 
let rotateActionThr = SKAction.rotateByAngle(degToRad(3.0), duration: 0.1) 

let shakeSequence = SKAction.sequence([rotateActionOne, rotateActionTwo, rotateActionThr]) 
someNode.runAction(shakeSequence) //or someNode.runAction(SKAction.repeatActionForever(sequence)) 

あなたはこの上記の例で訪問、https://www.raywenderlich.com/96822/sprite-kit-tutorial-drag-drop-spritesの完全なチュートリアルをしたい場合は、いくつかの素晴らしいチュートリアルがあります!

「バウンス」アニメーションを適用する場合は、物理エンジンに組み込まれたスプライトキットを使用できます。単にSKPhysicsBodyをSKNodeに適用するだけです。 categoryBitMask,collisionBitMaskおよびcontactBitMaskを使用して、別のSKPhysicsBody(1階など)を作成します。ノードを地面から跳ね返すことができます。 反発、摩擦linearDampingを調整して、より良い物理効果を作ります。

アニメーションの別のオプションは、PNGアニメーションエディタ(Adobe Animate CC)でアニメーションを実際に描画することです。キーフレームアニメーションは、計算上重くならずに複雑なアニメーションを得る方法です。しかし、これはかなり良い芸術的能力(かなりの時間)を必要とします。アニメーションをレンダリングしてSKTextureAtlasに入れ、次にテクスチャアトラスをアニメートしてアニメーションを作成することができます。

これは多少役立ちます。