Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


FillDefaultInspector

Adds default inspector property fields under a container VisualElement.
Read time 2 minutesLast updated 10 days ago

Definition

FillDefaultInspector(VisualElement, SerializedObject, Editor)

Adds default inspector property fields under a container VisualElement.
public static void FillDefaultInspector(VisualElement container, SerializedObject serializedObject, Editor editor)

Parameters

container

The parent VisualElement

serializedObject

The SerializedObject to inspect

editor

The editor currently used

Remarks

The following example shows how to fill a container with default inspector fields. For a complete example, refer to Create a default Inspector.

Examples

using UnityEditor;using UnityEditor.UIElements;using UnityEngine;using UnityEngine.UIElements;[CreateAssetMenu]public class MyEditorData : ScriptableObject{ public string myString; public float myFloat; public string myInt;}[CustomEditor(typeof(MyEditorData))]public class MyEditor : UnityEditor.Editor{ public override VisualElement CreateInspectorGUI() { var root = new VisualElement(); root.Add(new Label("My Custom Inspector")); InspectorElement.FillDefaultInspector(root, serializedObject, this); return root; }}

FillDefaultInspector(VisualElement, SerializedObject, Editor, string[])

Adds default inspector property fields under a container VisualElement.
public static void FillDefaultInspector(VisualElement container, SerializedObject serializedObject, Editor editor, params string[] propertiesToExclude)

Parameters

container

The parent VisualElement.

serializedObject

The SerializedObject to inspect.

editor

The Editor currently used.

propertiesToExclude

Properties to exclude when populating the Inspector. Properties with name matching _name are skipped.

Remarks

The following example shows how to fill a container with default Inspector fields. For a complete example, refer to Create a default Inspector.
using UnityEditor;using UnityEditor.UIElements;using UnityEngine;using UnityEngine.UIElements;[CreateAssetMenu]public class MyEditorData : ScriptableObject{ public string myString; public float myFloat; public string myInt;}[CustomEditor(typeof(MyEditorData))]public class MyEditor : UnityEditor.Editor{ public override VisualElement CreateInspectorGUI() { var root = new VisualElement(); root.Add(new Label("My Custom Inspector")); InspectorElement.FillDefaultInspector(root, serializedObject, this); return root; }}
The following example shows how to fill a container with default Inspector fields, excluding a specific property that is displayed as a Slider.
using UnityEditor;using UnityEditor.UIElements;using UnityEngine;using UnityEngine.UIElements;[CreateAssetMenu]public class MyEditorDataExclude : ScriptableObject{ public string myString; public float myFloat; public string myInt;}[CustomEditor(typeof(MyEditorDataExclude))]public class MyEditorExclude : UnityEditor.Editor{ public override VisualElement CreateInspectorGUI() { var root = new VisualElement(); root.Add(new Label("My Custom Inspector")); var myFloatSlider = new Slider { bindingPath = "myFloat", label = "My Float" }; root.Add(myFloatSlider); // Draw all properties except "myFloat" InspectorElement.FillDefaultInspector(root, serializedObject, this, "myFloat"); return root; }}