Version: 5.3 (switch to 5.4b)
言語English
  • C#
  • JS

スクリプト言語

好きな言語を選択してください。選択した言語でスクリプトコードが表示されます。

GameObject.Find

マニュアルに切り替える
public static GameObject Find(string name);

パラメーター

説明

name でゲームオブジェクトを検索し返します

name のゲームオブジェクトが見つからない場合、null を返します。 name に '/' が含まれている場合は、それは階層のあるパス名のように判断されます。 この関数はアクティブのゲームオブジェクトのみ返します。

パフォーマンス上の理由から毎フレームでこの関数を使用せずに 代わりに、初回の結果をメンバー変数にキャッシュしたり GameObject.FindWithTag を使用することをお勧めします。

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { public GameObject hand; void Example() { hand = GameObject.Find("Hand"); hand = GameObject.Find("/Hand"); hand = GameObject.Find("/Monster/Arm/Hand"); hand = GameObject.Find("Monster/Arm/Hand"); } }

この関数は、ロード時に他のオブジェクトの参照をもたせる時に非常に便利です。(例: MonoBehaviour.AwakeMonoBehaviour.Start の中で実行する) 毎フレームこの関数を呼び出すことは避けるようにしてください。例えばパフォーマンス上の理由で MonoBehaviour.Update で使用することは避けてください。 一般的な使い方は MonoBehaviour.Start 内でゲームオブジェクトの変数に割り当てることです。そうして、その変数を MonoBehaviour.Update で使用します。

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { private GameObject hand; void Start() { hand = GameObject.Find("/Monster/Arm/Hand"); } void Update() { hand.transform.Rotate(0, 100 * Time.deltaTime, 0); } }