2016-05-14 24 views
1

Unity3Dでは、クラスにパブリックプロパティを追加するだけで、プロパティフィールドをエディタに表示させることができます。このフィールドの横にあるボタンを追加して、そのフィールドに値を入力するファイルブラウザを開くことは可能ですか?Unity3dエディタにボタンを追加

私はEditorUtility.OpenFilePanelを見つけましたが、エディタ内でそのメソッドを呼び出すボタンを追加するにはどうすればよいですか?あなたが選択したとき(そのページ上のコード例のように、私は上部のツールバーにあるメニューを意味するものではありません)

おかげ

答えて

3

GUILayout.Button()メソッドは、インスペクタでボタンを表示しますあなたが参照しているgameObject。

たとえば、このコード(customButton.cs)は、OpenDialog()メソッドを呼び出すスクリプト "OpenFileButtonScript.cs"でインスペクタにボタンを追加します。

using UnityEngine; 
using System.Collections; 
using UnityEditor; 

[CustomEditor(typeof(OpenFileButtonScript))] 
public class customButton : Editor 
{ 
    public override void OnInspectorGUI() 
    { 
     DrawDefaultInspector(); 

     OpenFileButtonScript myScript = (OpenFileButtonScript)target; 
     if (GUILayout.Button("Open File")) 
     { 
      myScript.OpenDialog(); 
     } 
    } 

} 

これは、スクリプト "OpenFileButtonScript.cs" である:私は、これはあなたを助けることを願って

using UnityEngine; 
using System.Collections; 
using UnityEditor; 

public class OpenFileButtonScript : MonoBehaviour { 

    public string path; 

    public void OpenDialog() 
    { 
     path = EditorUtility.OpenFilePanel(
        "Open file", 
        "", 
        "*"); 
    } 
} 

。ボタンの詳細についてはこちらを参照してくださいvideotutorial

+1

完璧に、ありがとう! – TryNCode

関連する問題