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

Handles.ScaleHandle

Объявление

public static Vector3 ScaleHandle(Vector3 scale, Vector3 position, Quaternion rotation, float size);

Параметры

scale Масштаб для изменения.
position Положение ручки.
rotation Вращение ручки.
size Позволяет масштабировать размер ручки на экране.

Возвращает

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

Описание

Создаёт дескриптор масштаба представления сцены.

Это будет работать как встроенный инструмент масштабирования

Примечание. Используйте HandleUtility.GetHandleSize, если вы хотите иметь дескрипторы постоянного размера экрана.

Scale handle that will appear whenever you select the GameObject
// Назовите этот скрипт "ScaleAtPointEditor" using UnityEngine; using UnityEditor; [CustomEditor(typeof(ScaleAtPoint))] [CanEditMultipleObjects] public class ScaleAtPointEditor : Editor { public void OnSceneGUI() { ScaleAtPoint t = (target as ScaleAtPoint); EditorGUI.BeginChangeCheck(); Vector3 scale = Handles.ScaleHandle(t.scale, Vector3.zero, Quaternion.identity, 1); if (EditorGUI.EndChangeCheck()) { Undo.RecordObject(target, "Scaled ScaleAt Point"); t.scale = scale; t.Update(); } } }

И скрипт, прикрепленный к этому игровому объекту:

// Name this script "ScaleAtPoint" using UnityEngine; [ExecuteInEditMode] public class ScaleAtPoint : MonoBehaviour { public Vector3 scale = Vector3.one; public void Update() { transform.localScale = scale; } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3