【Swift】Spritekitの使い方。衝突した位置にパーティクルを放出する。【Swift】Spritekitの使い方。衝突した位置にパーティクルを放出する。2020年6月16日パーティクルファイルとは前回記事ではシーンにエミッターノードを配置してパーティクルを放出する方法を説明した。⇒「前回記事」シーン内の特定位置にパーティクルを放出するのではなく、ノード同士が触れたときの爆発シーンなどでパーティクルを瞬間的に放出したいことがある。そんなときにパーティクルファイルが利用される。いうか、普通にエミッターノードをシーンに配置するときもパーティクルファイルを使うことが多い。パーティクルファイルとは、パーティクルの放出を設定しておくことに特化したファイルである。このファイルをソースコードで読み込んでシーンに追加する。パーティクルファイルを使ってみる実際にパーティクルファイルを作って、ノード衝突時にパーティクルを放出してみよう。以降の手順を行う前のXcodeプロジェクトをGitHubに置いたので、試してみる方はご利用下さい。事前準備では、背景と鳥2匹をシーンに追加し、タップで茶鳥を落として赤鳥と衝突するところまでを実装しておいた。//SKSファイルに配置した鳥ノードを取得する。//デリゲート先を自分に設定する。//タッチした座標のノードを取得する。//鳥ノードの場合、物理ボディを設定する。{//SKSファイルに配置した鳥ノードを取得する。SKSpriteNode//デリゲート先を自分に設定する。{//タッチした座標のノードを取得する。SKSpriteNode//鳥ノードの場合、物理ボディを設定する。{print("衝突しました")}}メニューから「File」⇒「New」⇒「File...」を選択する。File」を選択し、「Next」ボタンを押す。パーティクルのテンプレートを選択する画面が表示されるので、今回は「Spark」を選択して「Next」ボタンを押す。Asに「TestParticle」を入力、保存先がプロジェクトフォルダになっていることを確認し、「Create」ボタンを押す。これでプロジェクトに「TestParticle.sks」と「spark.png」の2つのファイルが追加された。この中のTestParticle.sksがパーティクルファイルである。Sceneファイル(以下、SKSファイル)と同じ「sks」である。間違わないように気をつけよう。TestParticle.sksを開くと閃光の動画が表示される。これは、先ほどのパーティクルのテンプレートで「Spark」を選択したためである。https://hajihaji-lemon.com/apli/wp-content/uploads/2016/08/spritekit_particle_file_spark_movie.mp4パーティクルのテンプレートの選択肢は全部で8種類ある。どんな感じか見てみよう。好みに応じて自由に変更するべし。設定項目の意味については次の記事を参照されたし。Start「0.5」TestScene.swiftのdidBeginContactメソッドを以下のコードに変更する。//パーティクルを作成する。//接触座標にパーティクルを放出するようにする。//0.7秒後にシーンから消すアクションを作成する。//パーティクルをシーンに追加する。//アクションを実行する。{//パーティクルを作成する。"TestParticle.sks")//接触座標にパーティクルを放出するようにする。y:contact.contactPoint.y)//0.7秒後にシーンから消すアクションを作成する。action2])//パーティクルをシーンに追加する。self.addChild(particle!)//アクションを実行する。【Swift】SpriteKitの使い方。シェイプノードを使って多角形や円を描画する。...【Swift】SKSpriteNodeの設定。画像、サイズ、座標、アンカーポイントを指定する。光反射と影を表示する。Sceneファイルの使い方。ストーリーボードのようにノードをマウスで運んで配置する。...【Swift】SpriteKitの使い方。バックミュージックや効果音を鳴らす。...【Swift】SpriteKitの使い方。SKVideoNodeで動画の再生、リピート(繰り返し)、アニメーションを実行する。コメントをキャンセルメールアドレスが公開されることはありません。