Saltar al contenido principal

Prefabs e instanciación

Los prefabs y la instanciación te dan muchas copias de algo, pero resuelven problemas distintos. Aquí verás cómo elegir.

OpciónQué copiaCada copiaIdeal para
Prefabun grupo de objetosun objeto real que puedes mover y editar; se actualiza cuando cambias el prefabuna silla que se usa en doce salas
Instanciaciónla geometría de un solo objetosolo se dibuja; no puedes editarla por separadodiez mil briznas de hierba

Si eliges mal, o repites los mismos cambios una y otra vez, o tu escena se vuelve lenta.

Prefabs​

Un prefab es un grupo de objetos guardado que puedes añadir a las escenas tantas veces como quieras. Por ejemplo: una lámpara con su luz y su brillo, una puerta con su marco y su sonido, o un personaje con el rig completo.

Cuando cambias el prefab, se actualizan todas sus copias. Arreglas el pomo de la puerta una vez, no en doce salas.

Cada copia es una parte real de tu escena. Puedes moverla y cambiar ajustes que solo se aplican en el sitio donde está.

Crea un prefab la segunda vez que copies algo

En cuanto copies por segunda vez un pequeño grupo de objetos, conviértelo en prefab. Si esperas a tener doce copias, tendrás que poner de acuerdo doce juegos de pequeñas diferencias.

Instanciación​

La instanciación muestra la geometría de un objeto muchas veces. Mil copias cuestan más o menos lo mismo que una. Así es como se pueden tener campos de hierba, multitudes, cinturones de asteroides y bosques.

Puedes colocar las copias de tres formas:

  • grid: en una cuadrícula regular. Añade una variación aleatoria para que se vea menos regular.
  • scatter: repartidas sin orden dentro de una caja o una esfera.
  • children: una copia en la posición de cada objeto hijo.

Usa children para acelerar objetos que has colocado a mano. Colócalos donde quieras y luego activa children. Mientras está activado, en lugar de cada hijo se muestra una copia.

Haz que las copias se vean distintas​

Todas las copias comparten la misma geometría, así que por defecto se ven idénticas y repetitivas. Estos ajustes añaden variedad:

  • scaleMin · scaleMax: cada copia recibe un tamaño aleatorio entre los dos valores.
  • rotationJitter: cada copia recibe una rotación aleatoria.
  • colorA · colorB: cada copia recibe un tono entre los dos colores.

Para más variedad, un grafo de material puede saber qué copia se está dibujando y cambiar cualquier cosa en función de eso. Por ejemplo, cada copia puede balancearse en un momento distinto, verse más o menos desgastada o mostrar otro dibujo.

La misma distribución en todos los dispositivos

La cantidad, la forma y el seed producen la misma distribución en todas partes: en el editor, en un móvil y para todos los participantes de una sala multijugador. Diez mil copias no añaden tráfico de red.

Cambia el seed para obtener otra distribución con los mismos ajustes.

maxCount limita el número de copias. Las que pasan de ese límite no se dibujan, así que una errata en la cantidad no puede hacer que el motor intente usar una cantidad de memoria imposible.


Siguiente: Carga: qué se carga antes de que se abra tu escena y la pantalla de inicio.