Объявление
public static void EndGUI();Описание
Завершить блок 2D-графического интерфейса и вернуться к графическому интерфейсу 3D-дескриптора.
Смотрите так же: Handles.BeginGUI.

// Изменяем значения преобразования для выбранного объекта.
// При выборе этот скрипт запускается и управляется handleExample.
// Функции HandlesGUI.BeginGUI() и EndGUI() разрешают ShieldArea
// изменить обратно на пять, что является начальным значением.
using UnityEditor;
using UnityEngine;
[CustomEditor(typeof(HandleExample))]
class HandleExampleEditor : Editor
{
protected virtual void OnSceneGUI()
{
HandleExample handleExample = (HandleExample)target;
if (handleExample == null)
{
return;
}
Handles.color = Color.yellow;
GUIStyle style = new GUIStyle();
style.normal.textColor = Color.green;
Vector3 position = handleExample.transform.position + Vector3.up * 2f;
string posString = position.ToString();
Handles.Label(position,
posString + "\nShieldArea: " +
handleExample.shieldArea.ToString(),
style
);
Handles.BeginGUI();
if (GUILayout.Button("Reset Area", GUILayout.Width(100)))
{
handleExample.shieldArea = 5;
}
Handles.EndGUI();
Handles.DrawWireArc(
handleExample.transform.position,
handleExample.transform.up,
-handleExample.transform.right,
180,
handleExample.shieldArea);
handleExample.shieldArea =
Handles.ScaleValueHandle(handleExample.shieldArea,
handleExample.transform.position + handleExample.transform.forward * handleExample.shieldArea,
handleExample.transform.rotation,
1, Handles.ConeHandleCap, 1);
}
}
Добавьте скрипт, указывающий объект, который можно анимировать в SceneView.
using UnityEngine;
[ExecuteInEditMode]
public class HandleExample : MonoBehaviour
{
public float shieldArea = 5.0f;
}