一つのオブジェクトが表示されてから、何秒か後に、また別のオブジェクトが表示される仕組みをつくりましょう。
スタートから1秒経過してSphereが出現。
Sphereが出現してから、2秒後にCubeが表示されます。
関連記事:
ぶつかるとn秒間スピードアップ
コルーチンを使って1秒後にテキストを消す
Invokeを使ってn秒後に関数を実行する
1秒経過しなければクリックで実行できない
出現してから1秒後に落下する
スタートから3秒後にプレーヤーを追いかける
〇秒経てば出現
SphrereとCubeのオブジェクトを作成し、横並びに配置しました。
続いて、空のオブジェクトを作成します。
ObjectActive.csを作成して、GameObject(空のオブジェクト)に追加します。
ObjectActive.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 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class ObjectActive : MonoBehaviour { [SerializeField] GameObject sphereObject; [SerializeField] GameObject cubeObject; void Start() { sphereObject.SetActive(false); cubeObject.SetActive(false); Invoke("SphereSet", 1.0f); } void SphereSet() { sphereObject.SetActive(true); Invoke("CubeSet", 2.0f); } void CubeSet() { cubeObject.SetActive(true); } } |
GameObjectを選択し、2つのフィールドにSphereとCubeを入れます。
ゲームプレイしてみましょう。
両方とも非表示からスタートし、1秒たてばSphereが表示。
Sphereの表示後にInvokeで関数を実行し、2秒後にCubeを表示させています。
関連記事:
ぶつかるとn秒間スピードアップ
コルーチンを使って1秒後にテキストを消す
Invokeを使ってn秒後に関数を実行する
1秒経過しなければクリックで実行できない
出現してから1秒後に落下する
スタートから3秒後にプレーヤーを追いかける