Características de la unidad

Menú Menú

AddComponentMenuConstructor

Script para agregar configuraciones desde el menú Componente (se puede configurar la ruta))

AddComponentMenu - AddComponentMenu - API de secuencias de comandos de Unity

using UnityEngine;

[AddComponentMenu("Test")]
public class Test : MonoBehaviour
{
    
    
}

inserte la descripción de la imagen aquí


CreateAssetMenuAttribute/CreateAssetMenu

Implemente una ruta en Activos>Crear, cree archivos ScriptableObject y almacénelos en el proyecto (debe heredar de ScriptableObject)
UnityEngine.CreateAssetMenuAttribute - API de secuencias de comandos de Unity

using UnityEngine;

[CreateAssetMenu(fileName="Test",menuName = "Test",order=1)]
public class Test : ScriptableObject
{
    
    
    public string playerBiography = "";
}

inserte la descripción de la imagen aquí

panel de inspección

Menú de contexto

En el panel Inspector, ejecute la función de método vinculada a esta característica. (esta función debe ser no estática)

UnityEngine.ContextMenu: API de guión de Unity

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    [ContextMenu("Do Something")]
    void DoSomething()
    {
    
    
        Debug.Log("Perform operation");
    }
}

inserte la descripción de la imagen aquí


Atributo de encabezado

Asigne un título a las variables de secuencia de comandos en el panel Inspector

UnityEngine.HeaderAttribute: API de guión de Unity

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    [Header("Health Settings")]
    public int health = 0;
}

inserte la descripción de la imagen aquí


HideInInspector

Hace que la variable no se muestre en el Inspector, sino que se serialice.

UnityEngine.HideInInspector: API de guión de Unity

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    [HideInInspector]
    public int health = 0;
}

InspectorNombreAtributo

Utilice este atributo en una declaración de valor de enumeración para cambiar el nombre para mostrar que se muestra en el Inspector.

UnityEngine.InspectorNameAttribute - API de guión de Unity

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    public Mode Modes;
}

public enum Mode
{
    
    
    Auto = 0,
    [InspectorName("竖排")]
    SP = 1,
    [InspectorName("横排")]
    HP = 2,
}

inserte la descripción de la imagen aquí


Atributo mínimo

Atributo para restringir variables flotantes o int en scripts a un valor mínimo determinado.

UnityEngine.MinAttribute: API de guión de Unity

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    [Min(0)]
    public float minFloat;
}


MultilineAttribute

Visualización de texto múltiple en el editor

UnityEngine.MultilineAttribute - API de guión de Unity

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    [Multiline(10)]//默认为3行
    public string minFloat;
}

inserte la descripción de la imagen aquí


Atributo no reordenableNonReorderableAttribute

Las matrices o listas con esta propiedad no se pueden reorganizar en el editor

UnityEngine.NonReorderableAttribute - API de guión de Unity

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    [NonReorderableAttribute]
    public int[] array;
}

inserte la descripción de la imagen aquí


RangeAttribute

Atributo para restringir variables float o int en scripts a un rango específico.

Al usar esta propiedad, float o int se mostrarán como un control deslizante en el Inspector en lugar del campo numérico predeterminado.

UnityEngine.RangeAttribute: API de guión de Unity

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    [Range(1, 6)]
    public int integerRange;
}

inserte la descripción de la imagen aquí


RequireComponent

El atributo RequireComponent agrega automáticamente el componente requerido como una dependencia. (Al vincular el script, las dependencias establecidas se agregarán automáticamente y las dependencias no se pueden eliminar)

UnityEngine.RequireComponent: API de guión de Unity

using UnityEngine;

[RequireComponent(typeof(Rigidbody))]
public class Test : MonoBehaviour
{
    
    
}

inserte la descripción de la imagen aquí


Atributo de espacio

Agregar espaciado en el Inspector

UnityEngine.SpaceAttribute: API de guión de Unity

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    public int maxHealth = 100;
    
    [Space(10)]//中间十个间距
    
    public int shield = 0;
}

inserte la descripción de la imagen aquí


AtributoÁreaTexto

Se puede especificar un número mínimo y máximo de líneas para TextArea, y el campo se expandirá de acuerdo con el tamaño del texto. Si el texto es más grande que el área disponible, se muestran barras de desplazamiento.

UnityEngine.TextAreaAttribute - API de guión de Unity

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    [TextArea(0,10)]
    public string MyTextArea;
}

inserte la descripción de la imagen aquí


Atributo de información sobre herramientas

Especifica información sobre herramientas para los campos en la ventana Inspector.

UnityEngine.TooltipAttribute: API de guión de Unity

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    [Tooltip("提示")]
    int health = 0;
}

inserte la descripción de la imagen aquí

variable

ColorUsageAttribute/ColorUsage

Asigne atributos al color (1. Puede configurar si mostrar el canal alfa, 2. Puede configurar si es un color HDR)

UnityEngine.ColorUsageAttribute: API de guión de Unity

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    [ColorUsage(true,true)]//参数1:alpha开关。参数2:hdr开关。
    public Color testColor;
}

inserte la descripción de la imagen aquí


ContextMenuItemAttribute/ContextMenuItem

Haga clic con el botón derecho en la variable actual para establecer un evento y llamar al método.

UnityEngine.ContextMenuItemAttribute - API de Unity 脚本

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    [Multiline(8)]    
    [ContextMenuItem("Do Something", "ResetBiography")]
    public string playerBiography = "";

    void ResetBiography()
    {
    
    
        playerBiography = "Set";
    }
}

inserte la descripción de la imagen aquí


Atributo retrasado

Atributo para hacer que se difieran las variables flotantes, int o de cadena en los scripts.

Cuando se usa esta propiedad, el campo no devuelve un nuevo valor hasta que el usuario presiona la tecla Intro o aleja el foco del campo flotante, int o de texto.

UnityEngine.DelayedAttribute: API de guión de Unity

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    [Delayed]
    public string playerBiography = "";

}

guión

No permitir componente múltiple

Evita que un MonoBehaviour del mismo tipo (o subtipo) se agregue varias veces a un GameObject.

UnityEngine.DisallowMultipleComponent - API de guión de Unity

Colgar en más de un script informará un error
inserte la descripción de la imagen aquí


EjecutarSiempre

Agregue esta propiedad en modo de reproducción, modo de edición, modo prefabricado, cualquier instancia de MonoBehaviour siempre ejecutará su función de devolución de llamada.

UnityEngine.ExecuteAlways: API de guión de Unity

using UnityEngine;

[ExecuteAlways]
public class Test : MonoBehaviour
{
    
    
    void Start()
    {
    
    
        if (Application.IsPlaying(gameObject))
        {
    
    
            // Play logic
        }
        else
        {
    
    
            // Editor logic
        }
    }
}

EjecutarEnModoEditar

Ejecute la función de devolución de llamada en modo editor (se recomienda usar ExecuteAlways)


HelpURLAttribute

Agregar un documento personalizado para este script

UnityEngine.HelpURLAttribute - API de Unity 脚本

using UnityEngine;

[HelpURL("http://www.baidu.com")]
public class Test : MonoBehaviour
{
    
    
}

inserte la descripción de la imagen aquí


Atributo de propiedad

Clase base para derivar atributos de propiedad personalizados. Esto se puede usar para crear propiedades para variables de script.

Una propiedad personalizada se puede conectar con una clase PropertyDrawer personalizada para controlar cómo se muestran las variables de script con esa propiedad en el Inspector.

UnityEngine.PropertyAttribute: API de guión de Unity


RuntimeInitializeOnLoadMethodAttribute

Permite inicializar un método de clase en tiempo de ejecución sin la acción del usuario al cargar el juego en tiempo de ejecución. (no puedes montarlo)

Cuando se cargue el juego, se llamará al método [RuntimeInitializeOnLoadMethod]marcado . Esto se hace después de llamar Awakeal método .

UnityEngine.RuntimeInitializeOnLoadMethodAttribute - API de Unity 脚本

class MyClass
{
    
    
    [RuntimeInitializeOnLoadMethod]
    static void OnRuntimeMethodLoad()
    {
    
    
        Debug.Log("After Scene is loaded and game is running");
    }

    [RuntimeInitializeOnLoadMethod]
    static void OnSecondRuntimeMethodLoad()
    {
    
    
        Debug.Log("SecondMethod After Scene is loaded and game is running.");
    }
}

SerializeFieldSerializeField

Obliga a Unity a serializar campos privados.

Cuando Unity serializa scripts, solo se serializan los campos públicos. Si también desea que Unity serialice campos privados, puede agregar la propiedad SerializeField a esos campos.

UnityEngine.SerializeField: API de guión de Unity

using UnityEngine;

public class Test : MonoBehaviour
{
    
    
    [SerializeField]
    private string test;
}

SerializeReference

tipo de referencia serializado

UnityEngine.SerializeReference: API de guión de Unity

especial

SelectionBaseAttribute

En la ventana Escena, cuando el script vinculado a esta función está en el GameObject vinculado, cuando se hace clic en el objeto secundario del objeto por primera vez, se seleccionará el objeto vinculado al script.

UnityEngine.SelectionBaseAttribute - API de guión de Unity

using UnityEngine;

[SelectionBaseAttribute]
public class Test : MonoBehaviour
{
    
    
}

guion sin encuadernarinserte la descripción de la imagen aquí

secuencia de comandos vinculanteinserte la descripción de la imagen aquí

no resumido

AssemblyIsEditorAssembly

BeforeRenderOrderAttribute

CustomGridBrushAttribute

ExcludeFromObjectFactoryAttributeExcludeFromObjectFactoryAttribute

ExcludeFromPresetAttributeExcludeFromPresetAttribute

GradientUsageAttributeGradientUsageAttribute

GUITargetAttribute

Atributo de icono

ImageEffectAfterScale

ImageEffectAllowedInSceneView

ImagenEfectoOpaco

ImageEffectTransformsToLDR

ImagenEfectoUsosComandoBúfer

PreferBinarySerializationPreferBinarySerializationPreferBinarySerialization

SharedBetweenAnimatorsAttribute

UnityAPICompatibilityVersionAttribute

Supongo que te gusta

Origin blog.csdn.net/SodasZ/article/details/128386375
Recomendado
Clasificación