配列に格納したオブジェクトを、要素の番号(インデックス)で呼び出して、表示してみましょう。
クリックで配列の中に、順番に入ります。
非表示になったオブジェクトを、キー操作で表示します。
要素0~2に入っているオブジェクトについて、1のキーを押せば、1番最初のオブジェクトを表示。
2のキーを押せば2番目、3のキーを押せば3番目のオブジェクトが表示されます。
関連記事:
指定した要素番号にオブジェクトを入れる
クリックしたオブジェクトを順番に配列に入れる
ランダム表示したPrefabを順に配列に入れる
入力テキストを順番に配列に入れる
ぶつかったオブジェクトを順に配列に入れる
配列のオブジェクトをキー操作で切り替える
複数のオブジェクト名を配列に入れてテキスト表示
リストの中のオブジェクトを表示する
FindObjectsOfTypeで指定したクラスを全て取得
配列の中のオブジェクトを選んで置く
ゴールした順位をテキスト表示
ランダム出現のループをスペースキーで停止・実行
指定した要素番号のオブジェクトを置く
他のオブジェクトの配列を取得する
配列にある複数オブジェクトを一気に出す
複数地点から順番にPrefabを生成
配列に格納されたオブジェクトを表示させる
Cube、Sphere、Cupsuleを作成し、それぞれ横並びに配置します。
空のオブジェクト(GameObject)を作成します。
ClickObject.csを作成し、GameObjectに追加します。
ClickObject.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 50 51 52 53 54 55 56 57 58 59 60 61 62 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class ClickObject : MonoBehaviour { public GameObject[] myArray = new GameObject[3]; public int count; void Start() { count = 0; } void Update () { Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit hit; if (Input.GetMouseButtonDown(0) && count < 3) { if(count == 0){ if (Physics.Raycast(ray, out hit)) { myArray[0]= hit.collider.gameObject; hit.collider.gameObject.SetActive(false); count++; } } if(count == 1){ if (Physics.Raycast(ray, out hit)) { myArray[1]= hit.collider.gameObject; hit.collider.gameObject.SetActive(false); count++; } } if(count == 2){ if (Physics.Raycast(ray, out hit)) { myArray[2]= hit.collider.gameObject; hit.collider.gameObject.SetActive(false); count++; } } } if (Input.GetKey (KeyCode.Alpha1)) { myArray[0].gameObject.SetActive(true); } if (Input.GetKey (KeyCode.Alpha2)) { myArray[1].gameObject.SetActive(true); } if (Input.GetKey (KeyCode.Alpha3)) { myArray[2].gameObject.SetActive(true); } } } |
ゲームプレイしてみましょう。
オブジェクトをクリックすれば、順番にmyArrayの中に入ります。
非表示になっているオブジェクトを呼び出しましょう。
1キーを押せば要素0のオブジェクトが再び表示。
2キーは要素1にあるオブジェクト。
3キーは要素2にあるオブジェクトがそれぞれ表示します。
関連記事:
指定した要素番号にオブジェクトを入れる
クリックしたオブジェクトを順番に配列に入れる
ランダム表示したPrefabを順に配列に入れる
入力テキストを順番に配列に入れる
ぶつかったオブジェクトを順に配列に入れる
配列のオブジェクトをキー操作で切り替える
複数のオブジェクト名を配列に入れてテキスト表示
リストの中のオブジェクトを表示する
FindObjectsOfTypeで指定したクラスを全て取得
配列の中のオブジェクトを選んで置く
ゴールした順位をテキスト表示
ランダム出現のループをスペースキーで停止・実行
指定した要素番号のオブジェクトを置く
他のオブジェクトの配列を取得する
配列にある複数オブジェクトを一気に出す
複数地点から順番にPrefabを生成