5
私は、オブジェクトのリストを表示するカスタムウィンドウを持っています。これらの各オブジェクトにはカスタムインスペクタエディタがあります。カスタムウィンドウのユニティカスタムインスペクタ
カスタムインスペクタをカスタムウィンドウ内に表示することはできますか?
私は、オブジェクトのリストを表示するカスタムウィンドウを持っています。これらの各オブジェクトにはカスタムインスペクタエディタがあります。カスタムウィンドウのユニティカスタムインスペクタ
カスタムインスペクタをカスタムウィンドウ内に表示することはできますか?
Unity3D
では、インスペクタウインドウ以外にカスタムインスペクタを描画することはできません。
Btw Editor.CreateEditorメソッドを使用して手動でEditor
を導入することができます。 カスタムインスペクタを表示しているので、Window.OnGUI
メソッドから手動でインスタンスをインスタンス化し、エディタのpublic OnInspectorGUI
メソッドを使用してウィンドウ内にエディタを描画する必要があります。
using UnityEditor;
using UnityEngine;
public class TestWindow : EditorWindow
{
[MenuItem ("Window/Editor Window Test")]
static void Init()
{
// Get existing open window or if none, make a new one:
TestWindow window = (TestWindow)EditorWindow.GetWindow (typeof (TestWindow));
}
void OnGUI() {
GameObject sel = Selection.activeGameObject;
CustomScript targetComp = sel.GetComponent<CustomScript>();
if (targetComp != null)
{
var editor = Editor.CreateEditor(targetComp);
editor.OnInspectorGUI();
}
}
}
:あなたは
GameObject
に
CustomScript
というスクリプトを添付しており、関連
Editor
はあなたが階層から
GameObject
を選択していると仮定、
CustomScriptEditor
と呼ばれている、このコードは
EditorWindow
内のカスタムインスペクタを可視化する場合たとえば
、
素晴らしい! begincrollviewでもうまく動作します! – Klamore74