Directorio de artículos
- Menú Menú
- panel de inspección
- variable
- guión
- especial
- no resumido
-
- AssemblyIsEditorAssembly
- BeforeRenderOrderAttribute
- CustomGridBrushAttribute
- ExcludeFromObjectFactoryAttributeExcludeFromObjectFactoryAttribute
- ExcludeFromPresetAttributeExcludeFromPresetAttribute
- GradientUsageAttributeGradientUsageAttribute
- GUITargetAttribute
- Atributo de icono
- ImageEffectAfterScale
- ImageEffectAllowedInSceneView
- ImagenEfectoOpaco
- ImageEffectTransformsToLDR
- ImagenEfectoUsosComandoBúfer
- PreferBinarySerializationPreferBinarySerializationPreferBinarySerialization
- SharedBetweenAnimatorsAttribute
- UnityAPICompatibilityVersionAttribute
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
{
}
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 = "";
}
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");
}
}
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;
}
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,
}
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;
}
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;
}
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;
}
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
{
}
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;
}
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;
}
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;
}
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;
}
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";
}
}
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
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
{
}
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 Awake
al 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 encuadernar
secuencia de comandos vinculante