Осторожность
Пакет устарел и заменен - лучшими атрибутами

Этот пакет предоставляет следующие функции:
Этот пакет содержит базовый класс для ящика с лучшим выпадением.
Лучшее выпадающее место содержит:
Предоставляет возможность выбрать реализацию интерфейса, enum value с лучшим раскрыванием в Unity Inspector.
Также поддерживает перечисления флага .
Использование:
[ Select ] [ SerializeReference ]
private ISomeInterface someInterface ;
[ Select ] [ SerializeReference ]
private SomeAbstractClass someAbstractClass ;
[ Select ( typeof ( SomeAbstractClass ) ) ] [ SerializeReference ]
private List < SomeAbstractClass > someAbstractClasses ;
[ Select ( typeof ( ISomeInterface ) ) ] [ SerializeReference ]
private List < ISomeInterface > someInterfaces ;
[ Select ] [ SerializeField ]
private KeyCode keyCode ; Аналогично для Select Attribute, но позволяет определить свою собственную коллекцию выбора.
Использование:
[ Dropdown ( "Method()" ) ] [ SerializeField ]
private List < int > someInts ;
[ Dropdown ( "Method()" ) ] [ SerializeField ]
private List < int > someInts ; Поддерживает получение информации из других классов, чтобы использовать эту опцию selectorName с r: .
Использование:
[ Dropdown ( "r:OtherClass.StaticFieldOrProperty" ) ] [ SerializeField ]
private List < int > someInts ;
[ Dropdown ( "r:OtherClass.StaticMethod()" ) ] [ SerializeField ]
private List < int > someInts ;
[ Dropdown ( "r:Singleton.Instance.Method()" ) ] [ SerializeField ]
private List < int > someInts ;
[ Dropdown ( "r:Singleton.Instance.Method()" ) ] [ SerializeField ]
private List < int > someInts ; Предоставляет возможность увидеть предварительный просмотр объекта, щелкнув в поле в Unity Inspector.
Поддерживает предварительный просмотр объектов и объектов сцены , а также текстур и спрайтов .
Использование:
[ Preview ] [ SerializeField ]
private Sprite sprite ;
[ Preview ] [ SerializeField ]
private SomeMonobehaviour someMonobehaviour ; Предоставляет возможность отключить модификацию полей в инспекторе Unity, но сохраняйте его отображение.
Использование:
[ ReadOnlyField ] [ SerializeField ]
private SomeClass someClass ;
[ ReadOnlyField ] [ SerializeField ]
private float someFloat ;
[ ReadOnlyField ] [ TextArea ( 5 , 10 ) ] [ SerializeField ]
private string someString ; Предоставляет возможность нарисовать полноценную текстуру о поле в инспекторе Unity. Чтобы получить текстуру, откройте окно TextureImport и правое открытое контекстное меню -> сдаться в IconHeaderAttribute.
Использование:
[ IconHeader ( "TEXTURE_GUID" ) ] [ SerializeField ]
private string oldName ; Предоставляет возможность нарисовать полноценного инспектора ниже поля с типом inheretex от unityEngine.object.
Использование:
[ DrawInspector ] [ SerializeField ]
private SomeScriptable scriptable ; Предоставляет возможность переименовать этикетку в инспекторе Unity.
Использование:
[ RenameField ( "New Name" ) ] [ SerializeField ]
private string oldName ; Предоставляет возможность установить значение для Vector3/Vector2/Quaternion/Bounds от представления сцены путем перетаскивания ручек.
[GizmoLocal] работает только в инспекторе MonoBehaviour Unity.
Использование:
[ Gizmo ]
[ SerializeField ] private Bounds bounds ;
[ Gizmo ]
[ SerializeField ] private Vector3 vector3 ;
[ Gizmo ]
[ SerializeField ] private Quaternion quaternion ;
[ GizmoLocal ]
[ SerializeField ] private Bounds boundsLocal ;
[ GizmoLocal ]
[ SerializeField ] private Vector3 vector3Local ;
[ GizmoLocal ]
[ SerializeField ] private Quaternion quaternionLocal ; Предоставляет возможность отображения кнопки для метода в Unity Inspector.
Использование:
///Default usage of attribute.
[ EditorButton ]
private void SomeMethod ( )
{
//Some code.
}
///This button will call method with predefined parameters.
///When invokeParams not specified will call with null.
[ EditorButton ( invokeParams : 10f ) ]
private void SomeMethod ( float floatValue )
{
//Some code.
}
///This button will call method with predefined parameters.
///When invokeParams not specified will call with null.
[ EditorButton ( invokeParams : new object [ ] { 10f , 10 } ) ]
private void SomeMethod ( float floatValue , int intValue )
{
//Some code.
}
/// This button will be in the same row with button for SomeMethod2.
/// But will be in the second position.
/// When captureGroup not specified each button placed in separate row.
/// When priority not specified buttons in one row sorted by order in code.
[ EditorButton ( captureGroup : 1 , priority : 2 ) ]
private void SomeMethod1 ( )
{
//Some code.
}
[ EditorButton ( captureGroup : 1 , priority : 1 ) ]
private void SomeMethod2 ( )
{
//Some code.
}
/// This button will have name "Some Cool Button".
/// When displayName not specified or null/empty/whitespace button
/// will have name same as method.
[ EditorButton ( displayName : "Some Cool Button" ) ]
private void SomeMethod ( )
{
//Some code
} Вы можете проверить конструкторы для EditorButtonAttribute более конкретных вариантов.
Как установить