今回は、2DゲームのRPGにおける戦闘時の魔法エフェクトを作りたいと思います。
例として分かりやすいように魔法エフェクトを作りますが、物理攻撃のエフェクトも同じように作成出来ますので、自分の作成したいエフェクトを用意しておきましょう。
【Unity2D】RPGの戦闘で使用する魔法エフェクトを作成する
まずは、エフェクトアニメを用意します。
こんな感じの素材ですね。私は、ぴぽや倉庫さんのエフェクトを使わせて頂きました。
まずは、使いたいエフェクトをインポートします。
炎のマテリアルを作成する
Projectウィンドウから「Create」→「Material」で新規マテリアルを作成します。私は炎のエフェクトを作成するので名前を「FireMaterial」にしました。
Shaderを「Mobile」→「Particles」→「Addtive」に変更したら、炎のエフェクトをParticle Textureに設定します。
パーティクルシステムの作成
Hierarchyウィンドウから「Create」→「Effects」→「Particle System」をクリックします。
名前を「FireParticle」など分かりやすいものに変更します。
パーティクルの設定ですが、この辺は作成するエフェクトによって異なりそうですが、私の場合は上の画像のようにしました。
7枚の画像でファイアーを演出するので、1回の演出を長めにしてしまうと、スローなパラパラ漫画のようになってしまうので、1秒間に設定しています。
パーティクルを時間に応じて連続で発生させる必要はないので、「Rate over Time」は0にしてBurstsの「Count」を1にします。
「Shape」機能は今回使用しないのでチェックを外しておきます。
続いて「Texture Sheet Animation」にチェックを入れて「Tiles」にエフェクトの列と行の数値を入力します。私が使用するエフェクトアニメの場合は、Xが「7」、Yが「1」となります。
最後に「Renderer」の「Material」に先ほど作ったFireMaterialをセットします。
適当にシーンビューに配置してみて作成したエフェクトを再生してみましょう。
こんな感じですね。私のようにコマンド形式の2DRPGを作成する場合におすすめです。