Looking for unity3d Keywords? Try Ask4Keywords

unity3dEncontrar y coleccionar GameObjects


Sintaxis

  • Búsqueda de GameObject estática pública (nombre de cadena);
  • público estático GameObject FindGameObjectWithTag (etiqueta de cadena);
  • GameObject estático público [] FindGameObjectsWithTag (etiqueta de cadena);
  • objeto estático público FindObjectOfType (tipo de tipo);
  • objeto estático público [] FindObjectsOfType (tipo de tipo);

Observaciones

Qué método utilizar

Tenga cuidado al buscar GameObjects en tiempo de ejecución, ya que esto puede consumir recursos. Especialmente: no ejecute FindObjectOfType o Find in Update, FixedUpdate o más generalmente en un método llamado una o más veces por fotograma.

  • Llame a los métodos de ejecución FindObjectOfType y Find solo cuando sea necesario
  • FindGameObjectWithTag tiene un rendimiento muy bueno en comparación con otros métodos basados ​​en cadenas. Unity mantiene pestañas separadas en los objetos etiquetados y las consulta en lugar de toda la escena.
  • Para GameObjects "estáticos" (como elementos de UI y prefabs) creados en el editor, use la referencia de GameObject serializable en el editor
  • Mantenga sus listas de GameObjects en la Lista o Arreglos que usted mismo administra.
  • En general, si crea una gran cantidad de GameObjects del mismo tipo, eche un vistazo a la Agrupación de objetos
  • Guarda en caché los resultados de búsqueda para evitar ejecutar los métodos de búsqueda costosos una y otra vez.

Yendo mas profundo

Además de los métodos que vienen con Unity, es relativamente fácil diseñar sus propios métodos de búsqueda y recopilación.

  • En el caso de FindObjectsOfType() , puede hacer que sus scripts guarden una lista de ellos mismos en una colección static . Es mucho más rápido iterar una lista de objetos lista que buscar e inspeccionar objetos de la escena.

  • O cree un script que almacene sus instancias en un Dictionary basado en cadenas, y usted tiene un sistema de etiquetado simple que puede ampliar.

Encontrar y coleccionar GameObjects Ejemplos relacionados