Параметры
rotation | Ориентация ручки. |
position | Центр ручки в трехмерном пространстве. |
Возвращает
Quaternion Новое значение поворота, измененное взаимодействием пользователя с маркером. Если пользователь не перемещал дескриптор, он вернет то же значение, которое вы передали в функцию.
Описание
Создаёт маркер поворота сцены.
Это будет вести себя как встроенный инструмент поворота в Unity. Если вы что-то присвоили Undo.SetSnapshotTarget, оно будет полностью работать с Undo. Примечание. Используйте HandleUtility.GetHandleSize, если вы хотите иметь дескрипторы постоянного размера экрана.

// Назовите этот скрипт "RotateAtPointEditor"
using UnityEngine;
using UnityEditor;
[CustomEditor(typeof(RotateAtPoint))]
[CanEditMultipleObjects]
public class RotateAtPointEditor : Editor
{
public void OnSceneGUI()
{
RotateAtPoint t = (target as RotateAtPoint);
EditorGUI.BeginChangeCheck();
Quaternion rot = Handles.RotationHandle(t.rot, Vector3.zero);
if (EditorGUI.EndChangeCheck())
{
Undo.RecordObject(target, "Rotated RotateAt Point");
t.rot = rot;
t.Update();
}
}
}
И скрипт, прикрепленный к этому GameObject:
// Назовите этот скрипт "RotateAtPoint"
using UnityEngine;
[ExecuteInEditMode]
public class RotateAtPoint : MonoBehaviour
{
public Quaternion rot = Quaternion.identity;
public void Update()
{
transform.rotation = rot;
}
}