Unidad - Extensiones del Editor

prefacio

Para muchos método de alargamiento del editor de Unity, el documento comienza con algunos de los métodos más comúnmente utilizados, como la expansión de la columna de la escritura inspector, la expansión de la barra de menú superior, con ilustraciones describe su uso.

Gran parte de este acabado el papel de los desarrolladores de juegos independientes - indienova libro de la Unidad de conjuntos de uso de habilidades , pero sólo unos pocos de los métodos más comúnmente utilizados, y puesto en práctica en sus propios proyectos.

Proyecto Dirección: UnityEditor - SouthBegonia

Este artículo es para los intercambios de aprendizaje, retirados inmediatamente si hay alguna infracción.

extensión de columna Scripts

El método de la porción de extensión de la secuencia de comandos en el panel Inspector concentra, principalmente en código de script estandarizado para la variable visual columna, la facilitación

[Encabezado] título de propiedad

posterior elaboración de un código de área de título y una descripción general de la región para distinguir Código Significado

[Header("武器")]
public int weapon;
public int ammunition;
public int aurability;

[Tooltip] consejos de propiedad

Cuando se implementa en el Inspector, el ratón está sobre el nombre de la variable, lo que sugiere que la descripción de la variable

[Tooltip("玩家的名字,肯定不再是JOJO对吧")]
public string playerName;

[espacio] Propiedades de línea en blanco

Crear una línea en blanco en la página de guión inspector en los parámetros de visión vertical y horizontal espaciados

[Space]
public int health = 100;

[El Range ()] valores de rango de atributo

Tal que el valor de la variable sólo puede ser modificada dentro de este intervalo, y puede ser presentado de forma deslizante modificar variables en la página efecto Inspector

[Range(0, 1000)]
public int exp = 0;

propiedad [Desplegable] plegable

Implementado de manera que la pluralidad de variables establecidas, efecto plegable página Inspector. (Nota: Este método no se trata de la unidad, pero a partir del proyecto InspectorFoldoutGroup - PixeyeHQ , Para utilizar este método, sólo es necesario configurar el proyecto de secuencia de comandos para el siguiente elemento a su unidad)

[Pixeye.Unity.Foldout("Enemys")]
public GameObject a, b, c, d, e;

[SerializeField] serialización forzada

Hacer variables privadas visibles en las páginas del guión inspector, sino también conocida como la serialización obligatoria

[SerializeField]
private int coins;

[HideInInspector] Ocultar la propiedad

Haciendo variables públicas no son visibles en la página Inspector, logrando de esta manera las variables de protección

[HideInInspector]
public int maxHealth = 100;

[El TextArea] campo de entrada

Para cadenas de palabras más largas, que se expanden al tamaño del área de edición en el inspector (originalmente sólo una sola línea, y no se puede justificar)

[TextArea]
public string gameDescribe = "";

[AddComponentMenu] añadir componentes al menú

Por escrito antes de que el nombre de la clase, se puede añadir directamente a la clase Añadir menú de componentes

[AddComponentMenu("Managers/demo1")]
public class demo1 : MonoBehaviour
{
	// ...
}

El OnValidate () la comprobación de datos

el modo de edición función de los datos introducidos Inspector control de la

private void OnValidate()
{
    if (health < 0)
    {
        Debug.LogError("生命值不可为负");
        health = 0;
    }        
    else if (health > 100)
    {
        Debug.LogError("生命值不可超过最大值 " + maxHealth);          
        health = 100;
    }        
}

[El ContextMenu] menú contextual

La clase se puede añadir un menú emergente contextual del Inspector a la derecha página actual secuencia de comandos (o haga clic en el icono de secuencia de comandos para los tres puntos verticales derecha) para que aparezca el menú contextual personalizado

[ContextMenu("显示当前生命值")]
public void PrintHealth()
{
    Debug.Log("Health = " + health);
}

barra de menú extendido

En el modo de edición, puede visitar el elemento de la barra de menú superior personalizada para las funciones específicas que amplían el elemento de la barra de menú

[MenuItem("调试/查看版本信息")]
static void PrintSomething()
{
    // 注意:仅有静态函数才可使用该属性
    Debug.Log("当前Unity版本:" + Application.unityVersion);
    
}

referencia

Supongo que te gusta

Origin www.cnblogs.com/SouthBegonia/p/12637261.html
Recomendado
Clasificación