Version: 2018.1
public static void Label (Vector3 position, string text);
public static void Label (Vector3 position, Texture image);
public static void Label (Vector3 position, GUIContent content);
public static void Label (Vector3 position, string text, GUIStyle style);
public static void Label (Vector3 position, GUIContent content, GUIStyle style);

Parameters

position@param position Позиция в 3D пространстве, видимая из текущего маркера камеры.
text@param text Текст для отображения.
image@param image Текстура для отображаемая на надписи.
content@param content Текст, изображение и подсказка для данной надписи.
style@param style Стиль для использования. Если не указан, будет использоваться стиль для label текущего GUISkin.

Важно: Используйте HandleUtility.GetHandleSize если вам нужны маркеры постоянного размера.

Description

Делает надпись, расположенную в 3D пространстве.

Labels have no user interaction, do not catch mouse clicks and are always rendered in normal style.


Label in the Scene View.

//This script is not an editor script
//Attach this script to a GameObject in your Scene

using System.Collections; using System.Collections.Generic; using UnityEngine;

[ExecuteInEditMode] public class HandleExample : MonoBehaviour { public float shieldArea = 5.0f;

// Use this for initialization void Start() { }

// Update is called once per frame void Update() { } }
//Create a folder and call it "Editor" if one doesn't already exist. Place this script in it.

using UnityEngine; using System.Collections; using UnityEditor;

// Create a 180 degrees wire arc with a ScaleValueHandle attached to the disc // lets you visualize some info of the transform

[CustomEditor(typeof(HandleExample))] class LabelHandle : Editor { void OnSceneGUI() { HandleExample handleExample = (HandleExample)target; if (handleExample == null) { return; }

Handles.color = Color.blue; Handles.Label(handleExample.transform.position + Vector3.up * 2, handleExample.transform.position.ToString() + "\nShieldArea: " + handleExample.shieldArea.ToString());

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); } }

Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961