Описание
Раскрывается ли это свойство в инспекторе?
Сериализованные свойства с дочерними свойствами (например, массивы, настраиваемые сериализуемые структуры или настраиваемые сериализуемые классы) можно разворачивать или сворачивать в инспекторе, чтобы показать или скрыть их дочерние элементы. В следующем примере отображается примечание в инспекторе, когда пользователи расширяют свойство Quaternion.
using UnityEditor;
using UnityEngine;
[CustomPropertyDrawer(typeof(Quaternion))]
public class QuaternionDrawer : PropertyDrawer
{
public override float GetPropertyHeight(SerializedProperty property, GUIContent label)
{
// use the default property height, which takes into account the expanded state
return EditorGUI.GetPropertyHeight(property);
}
public override void OnGUI(Rect position, SerializedProperty property, GUIContent label)
{
// draw the default property editor
EditorGUI.PropertyField(position, property, label, true);
// display a warning to discourage users from manually editing child properties on a quaternion
if (property.isExpanded)
{
position.height = EditorGUIUtility.singleLineHeight;
position.xMin += EditorGUIUtility.labelWidth;
EditorGUI.HelpBox(position, "Editing quaternions manually is inadvisable.", MessageType.Warning);
}
}
}

Обратите внимание, что значение этого флага является общим для всех экземпляров рассматриваемого сериализованного свойства, которые имеют одинаковый путь к свойству и целевой тип. Например, при сворачивании определенного свойства в инспекторе для компонента то же свойство будет свернуто в инспекторе для всех других экземпляров того же типа компонента.