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

スクリプト言語

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

GameObject.Find

フィードバック

ありがとうございます

この度はドキュメントの品質向上のためにご意見・ご要望をお寄せいただき、誠にありがとうございます。頂いた内容をドキュメントチームで確認し、必要に応じて修正を致します。

閉じる

送信に失敗しました

なんらかのエラーが発生したため送信が出来ませんでした。しばらく経ってから<a>もう一度送信</a>してください。ドキュメントの品質向上のために時間を割いて頂き誠にありがとうございます。

閉じる

キャンセル

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

パラメーター

説明

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

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

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

	var hand : GameObject;
	// This will return the game object named Hand in the scene.
	hand = GameObject.Find("Hand");

// This will return the game object named Hand. // Hand must not have a parent in the hierarchy view! hand = GameObject.Find("/Hand");

// This will return the game object named Hand, // which is a child of Arm -> Monster. // Monster must not have a parent in the hierarchy view! hand = GameObject.Find("/Monster/Arm/Hand");

// This will return the game object named Hand, // which is a child of Arm -> Monster. // Monster may have a parent. hand = GameObject.Find("Monster/Arm/Hand");
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 で使用します。

	// Find the hand inside Start and rotate it every frame
	private var hand : GameObject;
	function Start () {
		hand = GameObject.Find("/Monster/Arm/Hand");
	}
	
	function Update () {
		hand.transform.Rotate(0, 100 * Time.deltaTime, 0);
	}
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); } }