特定のクラスが存在するオブジェクトを、すべて取得して、配列に入れる仕組みを作ります。
Cubeオブジェクトを複製し、すべてに同じスクリプトを追加しています。
スタートすると、同一クラスのCubeが、すべて配列の中に格納されます。
関連記事:
複数のオブジェクト名を配列に入れてテキスト表示
入力テキストを順番に配列に入れる
ランダム表示したPrefabを順に配列に入れる
配列にあるオブジェクトを要素番号で呼び出す
クリックしたオブジェクトを順番に配列に入れる
配列のオブジェクトをキー操作で切り替える
ぶつかったオブジェクトを順に配列に入れる
アクティブ状態のオブジェクト数を取得
特定のクラスが付いたオブジェクトをまとめて取得
Cubeを作成します。
CheckObject.csを作成し、Cubeに追加します。
Cubeを何個か複製しましょう。
すべてのCubeに、CheckObjectクラスが付いている状態です。
空のオブジェクトを作成します。
FindObject.csを作成し、GameObjectに追加します。
FindObject.csを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class FindObject : MonoBehaviour { public CheckObject[] Objects; void Start() { Objects = FindObjectsOfType<CheckObject>(); } } |
ゲームプレイしてみましょう。
CheckObjectクラスの存在するオブジェクトがすべて取得されて、配列の中にあることが確認できます。
関連記事:
複数のオブジェクト名を配列に入れてテキスト表示
入力テキストを順番に配列に入れる
ランダム表示したPrefabを順に配列に入れる
配列にあるオブジェクトを要素番号で呼び出す
クリックしたオブジェクトを順番に配列に入れる
配列のオブジェクトをキー操作で切り替える
ぶつかったオブジェクトを順に配列に入れる
アクティブ状態のオブジェクト数を取得