Handles

class in UnityEditor

Switch to Manual

Description

Пользовательские 3D GUI элементы управления, отображение их в окне Scene.

Handles are the 3D controls that Unity uses to manipulate items in the Scene view. There are a number of built-in Handle GUIs, such as the familiar tools to position, scale and rotate an object via the Transform component. However, it is also possible to define your own Handle GUIs to use with custom component editors. Such GUIs can be a very useful way to edit procedurally-generated Scene content, "invisible" items and groups of related objects, such as waypoints and location markers.

You can also supplement the 3D Handle GUI in the Scene with 2D buttons and other controls overlaid on the Scene view. This is done by enclosing standard Unity GUI calls in a Handles.BeginGUI and Handles.EndGUI pair within the Editor.OnSceneGUI function. You can use HandleUtility.GUIPointToWorldRay and HandleUtility.WorldToGUIPoint to convert coordinates between 2D GUI and 3D world coordinates.

using UnityEngine;
using UnityEditor;
public class ExampleScript : MonoBehaviour
{
    public float value = 7.0f;
}

// A tiny custom editor for ExampleScript component [CustomEditor(typeof(ExampleScript))] public class ExampleEditor : Editor { // Custom in-scene UI for when ExampleScript // component is selected. public void OnSceneGUI() { var t = target as ExampleScript; var tr = t.transform; var pos = tr.position; // display an orange disc where the object is var color = new Color(1, 0.8f, 0.4f, 1); Handles.color = color; Handles.DrawWireDisc(pos, tr.up, 1.0f); // display object "value" in scene GUI.color = color; Handles.Label(pos, t.value.ToString("F1")); } }

.

Static Variables

centerColorЦвет, используемый для маркеров, представляющий собой центр чего либо.
colorColors of the handles.
inverseMatrixОбратная матрица для всех обрабатываемых операций.
lightingМаркет подсвечен?
lineThicknessRetrieves the user preference setting that controls the thickness of tool handle lines. (Read Only)
matrixМатрица для всех обрабатываемых операций.
preselectionColorColor to use to highlight an unselected handle currently under the mouse pointer.
secondaryColorSoft color to use for for general things.
selectedColorЦвет, использующийся для активного в данный момент маркера.
xAxisColorColor to use for handles that manipulates the X coordinate of something.
yAxisColorЦвет для использования маркера, который управляет Y координатой чего либо.
zAxisColorЦвет для использования маркера, который управляет Z координатой чего либо.
zTestzTest of the handles.

Variables

currentCameraНастройка окна обзора для текущей камеры.

Static Functions

ArrowHandleCapРисует стрелку, примерно как при использовании инструмента "move".
BeginGUIСоздает 2D GUI блок внутри обрабатываемого 3D GUI.
ButtonMake a 3D Button.
CircleHandleCapРисует цилиндр. Передает его в обрабатываемые функции.
ClearCameraОчищаем камеру.
ConeHandleCapРисует конус. Передает в обрабатываемые функции.
CubeHandleCapОтображает куб. Передает в обрабатываемые функции.
CylinderHandleCapРисует цилиндр. Передает его в обрабатываемые функции.
DiscДелает перемещаемый мышкой 3D диск.
DotHandleCapРисует конус. Передает в обрабатываемые функции.
DrawAAConvexPolygonРисует сглаженную линию, указанную массивом точек и шириной.
DrawAAPolyLineРисует сглаженную линию, указанную массивом точек и шириной.
DrawBezierDraw textured bezier line through start and end points with the given tangents.
DrawCameraОтображает перед камерой рамку.
DrawDottedLineРисует линию из точек из p1 до p2.
DrawDottedLinesDraw a list of dotted line segments.
DrawGizmosDraw a subset of Gizmos (before or after postprocessing) for the given camera.
DrawLineDraws a line from p1 to p2.
DrawLinesРисует твердый очерченный прямоугольник в 3D пространстве.
DrawPolyLineDraw a line going through the list of points.
DrawSelectionFrameОтображает перед камерой рамку.
DrawSolidArcРисует круглый сектор ("кусок пирога") в 3D пространстве.
DrawSolidDiscРисует твердый диск в 3D пространстве.
DrawSolidRectangleWithOutlineРисует твердый очерченный прямоугольник в 3D пространстве.
DrawTexture3DSDFDraws a 3D texture using Signed Distance Field rendering mode in 3D space.
DrawTexture3DSliceDraws a 3D texture using Slice rendering mode in 3D space.
DrawTexture3DVolumeDraws a 3D texture using Volume rendering mode in 3D space.
DrawWireArcDraws a circular arc in 3D space.
DrawWireCubeРисует каркасный куб с центром в точке center и размером size.
DrawWireDiscDraws the outline of a flat disc in 3D space.
EndGUIЗаканчивает 2D GUI блок и возвращается к маркеру 3D GUI.
FreeMoveHandleДелает неограниченно движущийся маркер.
FreeRotateHandleДелает непостоянно вращающийся маркер.
GetMainGameViewSizeGet the width and height of the main game view.
LabelДелает надпись, расположенную в 3D пространстве.
MakeBezierPointsRetuns an array of points to representing the bezier curve.
PositionHandleMake a position handle.
RadiusHandleНазначает радиус маркера в окне Scene.
RectangleHandleCapРисует цилиндр. Передает его в обрабатываемые функции.
RotationHandleНазначает вращение маркера в окне Scene.
ScaleHandleНазначает масштабирование маркера в окне Scene.
ScaleSliderДелает направленно масштабируемый ползунок.
ScaleValueHandleMake a 3D handle that scales a single float.
SetCameraУстанавливает камеру таким образом, что все маркеры и гизмо отображаются с этими настройками.
ShouldRenderGizmosDetermines whether or not to draw Gizmos.
SliderMake a 3D slider that moves along one axis.
Slider2DMake a 3D slider that moves along a plane defined by two axes.
SnapToGridRounds each Transform.position to the closest multiple of EditorSnap.move.
SnapValueRounds value to the closest multiple of snap if snapping is active. Note that snap can only be positive.
SphereHandleCapРисует сферу. Передает ее в обрабатываемые функции.
TransformHandleCreates a transform handle.

Delegates

CapFunctionФункция, использующаяся для отображения маркера, Handles.RectangleCap.
SizeFunctionA delegate type for getting a handle's size based on its current position.
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961