【SpriteKit】パーティクルを設定してみた

箱が壊れたときにパーティクルが表示されるようにしてみました。

パーティクルを出すには、新規でSpriteKit Particle Fileを作成します。

Sparkを選択、ファイル名を決めると、sksファイルが生成されます。

Texutureを箱の画像に設定して、箱が壊れたときのパーティクルを作ります。

弾が箱に当たった瞬間に以下のコードを実行します。

if let box = two.node as? Box{
     let absolutePosition = self.convert(box.position, from: box.parent!)
     box.explode(position: absolutePosition, scene: self)
     box.removeFromParent()
 }

箱のある座標にパーティクルを設定するのですが、箱の座標を絶対座標に変換しています。

explode処理の中身は以下の通り。

func explode(position:CGPoint,scene:SKScene){
    let emitter = SKEmitterNode(fileNamed: "CrateExplosion")!
    emitter.position = position
    scene.addChild(emitter)
}

ファイル名と座標を設定して完了です。

ABOUTこの記事をかいた人

個人アプリ開発者。Python、Swift、Unityのことを発信します。月間2.5万PVブログ運営。 Twitter:@yamagablog