次は、砲弾と物体が当たった瞬間に「爆発のエフェクト(視覚効果)」を発生させる方法を学びます。
(事前準備)
*配布データの「Explosion」というフォルダをプロジェクトの「Assets」内に設定してください。
*「ここからダウンロード」 →ダウンロードが完了したらダブルクリックして解凍
*解凍した「Explosion」フォルダを「Assets」にドラッグ&ドロップする。
・設定できたら「Explosion」をクリック→「Prefab Examples」をダブルクリック
・「再生ボタン」を押した後、サンプルを「Hierachy」にドラッグして、それぞれどんなエフェクト(視覚効果)なのか試してみましょう。(爆発後、数秒で消えます。)
1)エフェクト(視覚効果)を発生させるスクリプト
このエフェクトは「砲弾」と「物体」が「当たった時」に発生させるようにします。
・「DestroyObject」スクリプトの中に下記コードを追加しましょう。
*横スクロールするとコードの全体を見ることができます。
using UnityEngine;
using System.Collections;
public class DestroyObject : MonoBehaviour {
// ★追加
public GameObject effectPrefab;
void OnCollisionEnter(Collision other){
if(other.gameObject.CompareTag("Shell")){
// ★追加
GameObject effect = Instantiate(effectPrefab, transform.position, Quaternion.identity) as GameObject;
// ★追加
Destroy(effect, 1.0f);
// 物体を破壊する。
Destroy(gameObject);
// 砲弾を破壊する。
Destroy(other.gameObject);
}
}
}
・コードが書けたらチェック。
・「Hierarchy」で物体をクリック
・「Assets」で「Explosion」をクリック→「Prefab Examples」をダブルクリック
・好きなエフェクトを「Effect Prefab」にドラッグ&ドロップ
ここまでできたら「再生ボタン」を押して確認してみましょう。
砲弾が物体に当たった瞬間エフェクトが出れば成功です。
(試してみよう!)
「Effect Prefab」に色々なエフェクトをドラッグ&ドロップして違いを確認してみましょう。


