あらかじめ指定した秒数になれば、指定したオブジェクトが出現するように、スクリプトを作成してみましょう。
スタートしてから、1秒、3秒、5秒後に、種類の異なるオブジェクトが現れるようにします。
関連記事:
タイマーがn秒になれば出現
数秒後にオブジェクトを出現させる
時間が経つほど間隔を短くする
種類の違うオブジェクトを順番に生成する
n秒おきに異なるオブジェクトを出す
Cube、Sphere、Cupsuleをそれぞれ作成し、リジッドボディを追加します。
3つのオブジェクトを、プロジェクトビューにドラッグ&ドロップし、プレハブ化します。
3つのオブジェクトの元データは削除しておきます。
空のオブジェクトを作成します。
ObjectAppear.csを作成し、GameObject(空のオブジェクト)に追加します。
ObjectAppear.csを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class ObjectAppear : MonoBehaviour { public GameObject[] myArray = new GameObject[3]; private float time; private bool flag; void Start() { time = 0; flag = false; } void Update() { time += Time.deltaTime; if(Mathf.Floor(time) == 1) { if(!flag) { Instantiate(myArray[0],new Vector3(0, 0, 0),Quaternion.identity); flag = true; } } else if(Mathf.Floor(time) == 3) { if(!flag) { Instantiate(myArray[1],new Vector3(0, 0, 0),Quaternion.identity); flag = true; } } else if(Mathf.Floor(time) == 5) { if(!flag) { Instantiate(myArray[2],new Vector3(0, 0, 0),Quaternion.identity); flag = true; } } else { flag = false; } } } |
MyArrayを展開し、要素0~2に、3つのPrefabデータを入れます。
ゲームプレイしてみましょう。
1秒、3秒、5秒後に、配列に入れた3つのオブジェクトが順に出現します。
関連記事:
タイマーがn秒になれば出現
数秒後にオブジェクトを出現させる
時間が経つほど間隔を短くする
種類の違うオブジェクトを順番に生成する