ただオブジェクトを消すだけでなく、ゲームの臨場感を出すためには、エフェクトが欠かせません。
オブジェクトを壊したときに、爆発のエフェクトを出現させてみましょう。
関連記事:
【Unity C#】クリックした位置にパーティクル発生
Instantiateでエフェクト生成
アセットストアから、Unity Particle Pack 5.x をダウンロードしました。
クリックでオブジェクトを壊すしくみは、スクリプトを書いていきます。
CubeDelete.csを作成し、破壊したいオブジェクトに追加しましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class CubeDelete : MonoBehaviour { [SerializeField] GameObject explosionPrefab; void OnMouseDown() { Instantiate (explosionPrefab, transform.position, Quaternion.identity); Destroy(this.gameObject); } } |
オブジェクトを選択しすると、Explositon Prefabの項目ができています。
ここでは、Emitter_For_Instance_OneShoot_B というエフェクトを使いました。
プレイしてみましょう。
爆発エフェクトが生成されました。
このように、Prefabを生成するには、Instantiateを使用して、何を、どの場所に、どの向きで、という順に入力します。
たとえば、マイクラのようにクリックで壊すようなシーンには、このスクリプトが活用できそうですね。