Keep your place in this quest

Log in or sign up for free to subscribe, follow lesson progress, and access more learning content.

Las Plantillas de Entidades son el sistema de entidades reutilizables de Cave.

Te permiten construir una configuración de entidad una vez, guardarla como un activo y colocar instancias de ella a través de las escenas.

image.png

Si vienes de otro motor, puedes pensar en las Plantillas de Entidades como el flujo de trabajo tipo prefab de Cave. Si eres nuevo en los motores de juegos, piensa en ellas como recetas de objetos reutilizables.

En lugar de reconstruir la misma puerta, enemigo, objeto coleccionable o widget de UI cada vez, creas la configuración una vez y la reutilizas donde la necesites.

¿Qué Son las Plantillas de Entidades?

Una Plantilla de Entidad es un activo que almacena una estructura de entidad.

Puede incluir:

  • Una entidad raíz (cada Plantilla DEBE tener una y solo una Entidad Raíz).
  • Entidades hijas.
  • Componentes.
  • Configuraciones de componentes.
  • Referencias a activos.
  • Propiedades.
  • Etiquetas.

Cuando colocas una plantilla en una escena, Cave crea una instancia de esa plantilla.

La instancia utiliza el activo de plantilla como su base, lo que significa que puede mantener la misma estructura interna mientras sigue existiendo como un objeto colocado en una escena específica.

Por Qué Importan las Plantillas de Entidades

Muchos objetos de juego no son solo una malla.

Un objeto coleccionable podría incluir:

  • Un modelo visible.
  • Un disparador.
  • Una luz.
  • Un efecto de partículas.
  • Un sonido.
  • Lógica que otorga la recompensa.

Una plantilla te permite mantener toda esa configuración junta.

Usa Plantillas de Entidades para cosas como:

  • Personajes jugadores.
  • Enemigos.
  • Objetos coleccionables.
  • Puertas.
  • Balas.
  • Vehículos.
  • Portales.
  • Volúmenes de daño.
  • Props.
  • Piezas de UI.
  • Objetos de juego reutilizables.

Las plantillas ahorran tiempo, pero también mantienen consistentes los objetos repetidos. Si cada objeto coleccionable de salud proviene de la misma plantilla, puedes mejorar la plantilla una vez y mantener el proyecto organizado.

Creando una Plantilla de Entidad

Puedes crear una Plantilla de Entidad desde el Navegador de Activos, o puedes promover una entidad de escena existente a plantilla haciendo clic derecho en ella en el Grafo de Escenas o presionando Ctrl + T para promover la seleccionada.

Un flujo de trabajo común es construir el objeto directamente en una escena primero, probarlo, y solo convertirlo en una plantilla una vez que la configuración sea útil. Se ve así:

  1. Construir una entidad en una escena.
  2. Agregar los componentes e hijos que necesita.
  3. Ajustar sus configuraciones.
  4. Promoverla a una Plantilla de Entidad.
  5. Reutilizar esa plantilla en la misma escena u otras escenas.

Pero tan pronto como estés seguro de que reutilizarás algo, como el jugador, enemigos, potenciadores, etc., es una buena práctica crearla inmediatamente, ya sea en el navegador de activos o promoviendo como se sugirió antes.

En el Grafo de Escenas, el menú de edición rápida puede promover una entidad a plantilla. El acceso directo mostrado por el editor es Ctrl + T.

Activo de Plantilla vs Instancia de Plantilla

Ayuda separar el activo de plantilla de la instancia colocada.

Concepto Significado
Activo de plantilla La configuración de objeto reutilizable almacenada en el Navegador de Activos.
Instancia de plantilla Una copia colocada de esa plantilla dentro de una escena.

El activo define la estructura reutilizable.

La instancia es donde esa estructura reutilizable aparece en una escena específica.

Editando una Plantilla de Entidad

Las plantillas se editan como su propio activo.

Cuando abres una plantilla para editarla, Cave cambia a una escena de edición de plantilla para que puedas editar la estructura interna de la entidad de la plantilla directamente.

La idea importante es:

> La plantilla posee su jerarquía interna.

Las instancias de escena usan esa jerarquía, pero no poseen directamente a cada hijo dentro de ella. Esto mantiene todas las instancias conectadas a la misma configuración reutilizable.

Vale la pena mencionar que esto deja de ser cierto una vez que comienza el juego, porque cuando inicias el juego, toda la jerarquía de la plantilla está inmediatamente disponible para que la personalices. Así que, al programar la lógica de tu juego, puedes esperar poder interactuar con la instancia de plantilla de entidad, hijos, etc.

Por ejemplo, si abres una plantilla de Enemigo y agregas un nuevo hijo Barra de Salud dentro de ella, cada instancia de esa plantilla de enemigo puede beneficiarse de la estructura actualizada.

Por Qué los Hijos de la Plantilla No Se Editan Directamente en la Escena

Cuando una instancia de plantilla está colocada en una escena, los hijos internos aún pertenecen a la plantilla. Por eso Cave protege a los hijos de la plantilla de la edición directa de la escena.

Por ejemplo, si una plantilla de enemigo contiene:

Enemy
  Body Mesh
  Detection Area
  Health Bar

Debes editar esos hijos internos dentro de la plantilla, no como objetos separados que pertenecen a la escena.

Esto mantiene cada instancia consistente. Si cada enemigo colocado pudiera editar libremente a sus hijos internos, la plantilla dejaría de ser un objeto reutilizable confiable.

Instanciando una Plantilla en una Escena

Después de que exista una plantilla, puedes colocarla en una escena.

Por ejemplo, puedes arrastrar una plantilla desde el Navegador de Activos al 3D View.

Cuando se coloca la plantilla:

  • Aparece en el Grafo de Escenas como una instancia de plantilla.
  • Cave usa un color de plantilla diferente (verde) para la instancia.
  • La instancia mantiene su conexión con el activo de plantilla.

image.png

Desde el punto de vista del flujo de trabajo, esta es una de las formas más rápidas de construir niveles. Creas una puerta, objeto coleccionable, enemigo o prop reutilizable una vez, luego colocas instancias donde el nivel las necesite.

Personalización Local de Plantilla

Las instancias de plantilla aún pueden ser personalizadas localmente:

image.png

La forma principal de hacerlo es a través de propiedades expuestas por la entidad raíz de la plantilla.

Esto te brinda un equilibrio útil:

  • La estructura permanece reutilizable.
  • Cada instancia colocada puede tener sus propios valores.

Por ejemplo, múltiples enemigos pueden usar la misma plantilla de enemigo, mientras que cada instancia tiene diferentes salud, velocidad, configuraciones de patrullaje u opciones de comportamiento.

Ejemplos de Propiedades Locales de Plantilla

Las propiedades locales útiles incluyen:

Propiedad Uso Ejemplo
Salud del enemigo Hacer que un enemigo sea más débil o más fuerte.
Velocidad del enemigo Crear variantes lentas y rápidas.
Cantidad de daño Reutilizar una configuración de peligro con diferentes niveles de riesgo.
Nivel objetivo de portal Mandar cada portal a una escena diferente.
Valor de recogida Hacer que monedas, gemas o recompensas valgan diferentes cantidades.
Estado de bloqueo de puerta Reutilizar una configuración de puerta para puertas bloqueadas y desbloqueadas.
Texto de UI Reutilizar un widget de UI con diferentes etiquetas.

Por ejemplo, una plantilla de Portal puede ser utilizada en muchos lugares si cada portal colocado tiene una propiedad local que elige la escena objetivo.

Ejemplos de Plantillas de Proyecto Inicial

Los proyectos iniciales pueden incluir varias plantillas útiles dependiendo de las opciones de proyecto que seleccionaste.

Puedes encontrar ejemplos como:

  • Plantilla de jugador.
  • Plantilla de enemigo.
  • Plantilla de daño.
  • Plantilla de portal.
  • Plantilla de vehículo.
  • Piezas de juego reutilizables.

Estas vale la pena inspeccionarlas. Ábrelas, mira la jerarquía, inspecciona los componentes y observa qué propiedades están expuestas.

El contenido generado no solo está ahí para ser usado. También está allí para enseñarte cómo se pueden construir objetos reales en Cave.

Buenas Aplicaciones para Plantillas de Entidades

Crea una plantilla cuando un objeto sea:

  • Repetido muchas veces.
  • Usado a través de múltiples escenas.
  • Construido a partir de múltiples componentes.
  • Construido a partir de múltiples entidades hijas.
  • Destinado a comportarse de manera consistente.
  • Útil como una pieza de juego reutilizable.

Buenos candidatos incluyen:

  • Enemigos.
  • NPCs.
  • Armas.
  • Balas.
  • Objetos coleccionables.
  • Puertas.
  • Puntos de control.
  • Trampas.
  • Portales de nivel.
  • Vehículos.
  • Props destructibles.
  • Widgets de UI.
  • Piezas de diseño de nivel reutilizables.

Cuanto más a menudo reutilices un objeto, más valiosa se vuelve una plantilla.

Cuándo No Usar una Plantilla

No todo necesita ser una plantilla.

Un objeto único que aparece una vez y solo tiene sentido en una escena puede permanecer como una entidad de escena normal.

Por ejemplo:

  • Un prop cinematográfico único.
  • Un disparador específico de nivel.
  • Una decoración única que nunca se reutilizará.
  • Un objeto de prueba temporal.

Las plantillas son poderosas, pero son más útiles cuando la reutilización realmente importa. Convertir cada pequeño objeto en una plantilla demasiado pronto puede hacer que el proyecto sea más difícil de gestionar, no más fácil.

Una Regla Simple para Plantillas

Si te encuentras copiando la misma configuración de entidad más de una vez, considera hacer de ello una Plantilla de Entidad.

Ese hábito puede ahorrar mucho tiempo y mantener tu proyecto mucho más limpio a medida que crece.