Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

EditorGUI.InspectorTitlebar

Объявление

public static bool InspectorTitlebar(Rect position, bool foldout, Object targetObj, bool expandable);

public static bool InspectorTitlebar(Rect position, bool foldout, Object[] targetObjs, bool expandable);

Параметры

position Прямоугольник на экране для использования в качестве заголовка.
foldout В разложенном состоянии показано стрелкой.
targetObj Объект (например, компонент), для которого предназначена панель заголовка.
targetObjs Объекты, для которых предназначена панель заголовка.
expandable Должен ли этот редактор отображать раскрывающуюся стрелку, чтобы переключать отображение его свойств.

Возвращает

bool Состояние раскрытия, выбранное пользователем.

Описание

Создает строку заголовка, похожую на окно инспектора.

В строке заголовка есть раскрывающаяся стрелка, значок справки и меню настроек, которое зависит от типа предоставленного объекта.

Заголовок инспектора в окне редактора.
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor; // Окно Редактора, показывающее подробное вращение (компоненты X,Y,Z и W), // положение в 3D-пространстве и положение в пространстве Screen выбранного // трансформа. class CustomTransformInspector : EditorWindow { bool showing = true; Vector4 rotationComp; [MenuItem("Examples/GameObject detailed inspector")] static void Init() { CustomTransformInspector window = (CustomTransformInspector)EditorWindow.GetWindow(typeof(CustomTransformInspector)); window.Show(); } void OnInspectorUpdate() { Repaint(); } void OnGUI() { var currObj = Selection.activeTransform; showing = EditorGUI.InspectorTitlebar(new Rect(0, 0, position.width, 20), showing, currObj, showing); if (showing) { if (currObj) { currObj.position = EditorGUI.Vector3Field(new Rect(3, 15, position.width - 6, 20), "Position in 3D Space:", currObj.position); EditorGUI.Vector2Field(new Rect(3, 50, position.width - 6, 20), "Position in ScreenSpace:", Camera.main.WorldToScreenPoint(currObj.position)); rotationComp = EditorGUI.Vector4Field(new Rect(3, 85, position.width - 6, 20), "Detailed Rotation:", QuaternionToVector4(currObj.localRotation)); currObj.localRotation = ConvertToQuaternion(rotationComp); currObj.localScale = EditorGUI.Vector3Field(new Rect(3, 120, position.width - 6, 20), "Scale:", currObj.localScale); } else { EditorGUI.DropShadowLabel( new Rect(3, 15, position.width, 20), "Select an Object to inspect"); } } } Quaternion ConvertToQuaternion(Vector4 v4) { return new Quaternion(v4.x, v4.y, v4.z, v4.w); } Vector4 QuaternionToVector4(Quaternion q) { return new Vector4(q.x, q.y, q.z, q.w); } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3