FC2ブログ

[Unity]InspectorにObject型の入力フィールドを表示する

  • Day:2012.12.09 23:40
  • Cat:Unity
InspectorにObject型の入力フィールドを表示するためには
EditorGUILayout.ObjectFieldを使用します。

拡張したいコンポーネントのクラス

using UnityEngine;

public class Pokemon : MonoBehaviour
{
public Object Object;
public Camera Camera;
}
拡張エディタクラス

using UnityEngine;
using UnityEditor;

[CustomEditor(typeof(Pokemon))]
public class PokemonEditor : Editor
{
public override void OnInspectorGUI()
{
var pokemon = target as Pokemon;

pokemon.Object = EditorGUILayout.ObjectField("オブジェクト", pokemon.Object, typeof(Object), true);
pokemon.Camera = EditorGUILayout.ObjectField("カメラ", pokemon.Camera, typeof(Camera), true) as Camera;
}
}

ss_20121122234429.png

Object型の入力フィールドを使用することで
コンポーネントのObject型の値をドラッグ&ドロップで簡単に変更することができます。

シーン内のオブジェクトを参照できるようにしたい場合は第4引数にtrueを渡します。

Unity Script Reference – EditorGUILayout.ObjectField
スポンサーサイト