【Unity初心者 ゲーム開発メモ】エフェクト発生、削除のメモ

2020年5月27日

こんにちは、妄想仮面です。

皆さん、元気にしておりましたでしょうか。
かなり久々の投稿すぎて、Wordpressの使い方ほぼ忘れてしまい投稿に手間取ってしまいました。。。

(しかも、この短期間の間にAmazonAPIがバージョンアップしていて、更新必要みたいだったし…)

とまあ、前置きはさておき、最近現場が変わりまして、本格的にUnityの勉強が必要な状況になってきました。
※その経緯とかはそのうちブログで記載したいと思います。

で、せっかくUnityの勉強をしているので、ただ勉強するだけは勿体ないなと思ったので私のメモとして、詰まった部分などをブログでアウトプットしていきたいと思い更新を再開することにしました。

では早速、メモを記載していきたいと思います。

※下記ではUnityちゃんを使用するため、下記からインストールしてください。

"Unity-Chan!" Model
Unity‐Chan!Model




エフェクトの発生、削除を実現!!

現在、学習がてら3Dのゲームを制作しているのですが、その中で、キャラクターが死んだときに爆発エフェクトで消し去りたいなと思いました。

以下のような爆発を実現します

Unityちゃん…∑(゚д゚;)
さらば…

こんな感じでUnityちゃんを爆発させたいのですが、実装時につまずいた点があったため、こちらにざっくりメモしていきます!

UnityAssetStoreからアセットをダウンロード

正直ここはなんでもいいです。
自分が使用したい爆裂魔法を選んで、Unityちゃんを消し飛ばしてあげてください。※物騒

ちなみにぼくは以下のAssetを使用しました。

スクリプト作成

C#で爆発用のスクリプトを書いていきます。
※後々Prefab化して敵など他のオブジェクトにも使用するため、Playerスクリプト内などに一緒に記載するとかなりめんどくさいことになるため、分けて記載してください。

1.スクリプト「Player」に以下のコードを記載
下記スクリプトはPlayerオブジェクトへアタッチ済みとする
以下では、「unitychan」という名前のオブジェクトへアタッチしている

2.「Explosion」スクリプトを記載
Playerに記載したスクリプトのみでは、エフェクトが爆発し続けてUnityちゃんも成仏できないので、下記で、爆裂魔法を消す処理を記載します。

上記でスクリプトの準備はOKです

Prefabの設定

Prefabの設定をしていきます。

1、爆裂魔法オブジェクトをHierarchyに配置

2、配置した爆裂魔法オブジェクトに「Explosion.cs」スクリプトをアタッチ
※Projectからでは爆裂魔法オブジェクトにスクリプトをアタッチできないため、一度Hierarchyに配置する必要がある

3、爆裂魔法オブジェクトをPrefab化
配置した爆裂魔法オブジェクトをProjectへD&Dするだけ

4、Hierarchyに配置した爆裂魔法オブジェクトは削除していい

5、PlayerオブジェクトのスクリプトにProjectからPrefab化した爆裂魔法オブジェクトをアタッチ
※アタッチしなくても生成されたため正直大丈夫だったかも

下記、Break Effectの中

7.PlayerオブジェクトとEnemyタグをつけたオブジェクトにColliderを追加する
追加するColliderは何でもいいです。また、設定はしなくていいです。当たり判定を持たせられればいいので。
ちなみに、ぼくはPlayerには「CapsuleCollider」敵には「BoxCollider」を使用してます。

※オブジェクトを配置するTerrainやオブジェクトを動かす処理などは別途必要となります。そのうちメモ書くと思います。

上記完了後、作成したPlayerオブジェクトとEnemyタグを設定したオブジェクト(なんでもいい)をぶつけると爆発してUnityちゃんが散るはずです。

さらばUnityちゃん!

本日は以上です。

Unity

Posted by urikuro