Cave: Guía de Inicio
Cave: Guía para empezar
Lesson 9 of 19 • 25 XP
Keep your place in this quest
Log in or sign up for free to subscribe, follow lesson progress, and access more learning content.
Entendiendo las Entidades
Ahora vamos a entender el concepto de una Entidad en Cave. Las entidades son los objetos básicos dentro de una escena en Cave.
Si una escena es un nivel, un menú o un espacio de prueba, las entidades son las cosas que existen dentro de ese espacio. Por ejemplo, un jugador, enemigo, puerta, luz, cámara, disparador, botón de UI, fuente de sonido y carpeta pueden ser todos entidades.
En esta lección, aprenderás sobre:
- Nombres.
- IDs.
- Estado activo.
- Paternidad.
- Carpetas.
- Orden en la jerarquía.
- Etiquetas y propiedades.
- Instancias de plantillas.
Estos detalles pueden parecer pequeños, pero hacen una gran diferencia cuando una escena crece de pocos objetos a un nivel real.
¿Qué es una Entidad?
Una Entidad es un objeto en una escena.
Una entidad puede representar:
- Un objeto 3D visible.
- Un ayudante invisible.
- Un disparador de juego.
- Un elemento de UI.
- Una fuente de sonido.
- O simplemente una carpeta usada para organización.

Por ejemplo, una caja es una entidad visible. Un punto de aparición puede ser invisible durante el juego, pero sigue siendo una entidad porque marca dónde debe ocurrir algo.
Cave mantiene esta idea simple: las escenas se construyen a partir de entidades.
Las Entidades son Contenedores de Componentes
Las entidades no hacen mucho solas, sus características vienen de los componentes. Por ejemplo:
| Entidad | Componentes que podría tener |
|---|---|
| Caja | Transform, Malla, Cuerpo Rígido. |
| Jugador | Transform, Personaje, Cámara, Python, Audio. |
| Puerta | Transform, Malla, Cuerpo Rígido, Logic Bricks. |
| Antorcha | Transform, Malla, Luz, Audio. |
| Botón | Transform, Elemento UI, Logic Bricks o Python. |
| --- |
Por esto las entidades son flexibles. Una puerta no es un tipo de objeto codificado rígidamente. Es una entidad hecha de piezas: una malla para verla, colisión para bloquear al jugador, y lógica para abrirla o cerrarla.
Cuando entiendes esto, construir objetos se vuelve más práctico. Dejas de preguntar "¿qué tipo de objeto necesito?" y empiezas a preguntar "¿qué componentes necesita esta entidad?"
Nombres de Entidades
Cada entidad tiene un nombre. Puedes renombrar una entidad desde su menú de edición rápida en el Scene Graph o desde la pestaña Properties.
Vale la pena mencionar que los nombres son para humanos primero:
- Hacen que el Scene Graph sea más fácil de escanear.
- Facilitan la depuración.
- Ayudan a hablar sobre objetos con compañeros.
- Te ayudan a entender tu propia escena más tarde.
Cave no requiere que cada nombre de entidad sea único. Múltiples entidades pueden compartir el mismo nombre, lo cual es útil para objetos repetidos como rocas, monedas, cajas o enemigos.
Sin embargo, no consideres el nombre como el único identificador confiable para una entidad.
Los buenos nombres son simples y descriptivos:
| Nombre Débil | Mejor Nombre |
|---|---|
Mesh |
Caja de Madera |
Empty |
Inicio del Jugador |
Light |
Luz de Entrada de Cave |
Folder |
Grupo de Enemigos |
El objetivo no es hacer nombres llamativos, sino hacer que la escena sea legible.
Los nombres de entidad también pueden usarse en código para referirse a una entidad específica de tu escena, pero dado que sabes que múltiples entidades pueden tener el mismo nombre, también debes ser consciente de que si usas el nombre para obtener una entidad, y hay varias con ese nombre, puede que se produzcan comportamientos indefinidos porque no hay garantía sobre cuál entidad devolverá la escena. Devolverá la primera que encuentre según la búsqueda. Así que si es importante obtener un objeto específico en código, como el jugador, asegúrate de darle un nombre único.
IDs de Entidades
Cave rastrea internamente las entidades con IDs únicos.
Generalmente no necesitas editar o preocuparte por estos IDs. Existen para que el motor pueda identificar entidades de manera confiable, incluso cuando los nombres se repiten. De hecho, los IDs únicos son inmutables, lo que significa que no puedes cambiarlos. Son asignados automáticamente por el motor.
Recuerda esto:
| Elemento | Propósito |
|---|---|
| Nombre | Te ayuda a leer la escena. |
| ID | Ayuda a Cave a rastrear el objeto internamente. |
Si dos enemigos se llaman Enemy, Cave aún puede distinguirlos detrás de escena.
Estado Activo de la Entidad
Las entidades pueden estar activas o inactivas.

En el Scene Graph y en la pestaña Properties, esto se muestra con un control de ojo para el estado activo.
| Estado | Significado |
|---|---|
| Activo | La entidad participa en la escena normalmente. |
| Inactivo | La entidad permanece en la escena, pero está deshabilitada. |
Dependiendo de la entidad y sus componentes, deshabilitar puede afectar:
- Renderizado.
- Física.
- Lógica.
- Actualizaciones en tiempo de ejecución.
- Comportamiento de componentes.
Una entidad deshabilitada no tendrá llamadas a las actualizaciones de sus componentes en ningún momento, y en el momento que deshabilitas una entidad, también se llama al método de fin de sus componentes, y cuando la vuelves a habilitar, se llama al método de inicio de sus componentes.
Puedes asumir con seguridad que una entidad inactiva no contribuirá a los cálculos de física, lógica, disparadores, etc. a menos que consultes manualmente esas entidades en la escena e ignores que están deshabilitadas.
La idea práctica es simple: inactivo significa "se conserva aquí, pero no participa actualmente."
Deshabilitar vs Eliminar
Deshabilitar y eliminar no es lo mismo.
| Acción | Resultado |
|---|---|
| Deshabilitar | Conserva la entidad en la escena pero la apaga. |
| Eliminar | Quita la entidad de la escena. |
Deshabilita una entidad cuando puedas querer usarla más tarde. Elimina una entidad cuando estés seguro de que debe removerse.
Para pruebas, deshabilitar es a menudo más seguro. Si un encuentro con enemigos es muy difícil, deshabilita algunos enemigos primero y prueba el nivel. Si el cambio se siente bien, puedes limpiar la escena después.
Paternidad de Entidades
Las entidades pueden tener otras entidades como padres.
Cuando una entidad tiene un padre, pasa a ser parte de la jerarquía de ese padre. Si mueves el padre, los hijos se mueven con él.
La paternidad es útil para:
- Una espada adherida a un personaje.
- Una luz adherida a una antorcha.
- Una cámara adherida a un vehículo.
- Un grupo de props organizados bajo una carpeta.
- Elementos de UI agrupados bajo un panel padre.
La paternidad también afecta las transformaciones. La transformación de una entidad hija se evalúa relativa a la jerarquía del padre.
Esta es una de las formas más simples de mantener objetos relacionados juntos.
Entidades Carpeta
Las entidades carpeta se usan para organización. Son especialmente útiles cuando tu escena empieza a contener muchos objetos.
Por definición, lo que hace que una entidad sea una carpeta es básicamente la ausencia de componentes en ella, particularmente un Transform y un componente Elemento UI, porque si una entidad no tiene una transformación en el mundo y no tiene un elemento UI, probablemente se usará como carpeta. Pero eso es más una convención de nombres, así que tenlo en cuenta.
Grupos comunes de carpetas incluyen:
- Entorno.
- Disparadores de Juego.
- Enemigos.
- Props.
- Iluminación.
- UI.
- Audio.
- Ayudantes de Depuración.
Las carpetas no solo son para mantener el orden. Un Scene Graph limpio te ayuda a trabajar más rápido porque puedes encontrar el objeto que necesitas sin buscar entre cientos de entidades sueltas.
Orden en la Jerarquía de Entidades
El orden de las entidades en el Scene Graph importa para la organización, y en algunos casos puede importar para cómo se procesan o muestran las cosas.
Si abres una carpeta y ves la estructura así, es más difícil de escanear:
Caja
Jugador
Luz
Enemigo
Cámara
Roca
Disparador
Pero esto es más fácil:
Jugador
Cámara
Iluminación
Enemigos
Entorno
Disparadores de Juego
El objetivo no es hacer la jerarquía llamativa, sino útil.
Si puedes abrir una escena después de una semana y entender inmediatamente dónde están los objetos importantes, tu jerarquía está haciendo su trabajo.
Nota importante: debido a cómo el motor optimiza su Scene Graph interno, el orden de las entidades a nivel superior, es decir, entidades que no tienen padre, será aleatorio, pero las entidades hijas pueden tener un orden específico, y puedes organizarlo haciendo clic derecho en cada entidad individual en el editor y moviéndola hacia arriba, abajo, al tope o al fondo.
Propiedades y Etiquetas de la Entidad
Las entidades pueden almacenar propiedades personalizadas y etiquetas.
| Característica | Propósito |
|---|---|
| Propiedad | Almacena un valor editable. |
| Etiqueta | Añade una etiqueta usada para identificación o agrupación. |
Por ejemplo, un enemigo podría tener:
- Una etiqueta
Damageable. - Una propiedad
health. - Una propiedad
team. - Una propiedad
patrolRadius.
Los scripts y la lógica pueden usar estos datos para tomar decisiones.
Un sistema de daño podría buscar entidades con la etiqueta Damageable. Un script de enemigo podría leer patrolRadius para decidir qué tan lejos puede patrullar el enemigo.
Las propiedades y etiquetas te permiten adjuntar significado de juego a una entidad sin necesitar un componente especial para cada pequeño dato.
Las etiquetas son más rápidas de consultar que las propiedades, por lo que son mejores, por ejemplo, para identificar una entidad que puede recibir daño o que es un enemigo, etc. Pero no contienen valor en sí. Una propiedad es más lenta de consultar, pero puedes añadir un valor. En términos de código, las propiedades de entidades son literalmente diccionarios de Python.
Vista Previa de Plantilla de Entidad
Algunas entidades son instancias de Plantillas de Entidad. El jugador que encontrarás en el proyecto nuevo por defecto de Cave, por ejemplo, es una instancia de esta plantilla aquí:

Las instancias de plantilla se muestran diferente en el Scene Graph, usando el color de plantilla de Cave. Esto te ayuda a reconocer que la entidad viene de un asset de plantilla reutilizable.
Cuando una entidad es una instancia de plantilla:
- Sus hijos internos pertenecen a la plantilla.
- La instancia colocada pertenece a la escena.
- La estructura de la plantilla se edita abriendo el asset de plantilla.
- Los valores locales aún pueden ajustarse cuando se exponen como propiedades.
La siguiente lección explica las Entity Templates con más detalle.
El Modelo Mental de la Entity
Piensa en una entity como un pequeño contenedor:
- El nombre te ayuda a entenderla.
- El ID ayuda a Cave a rastrearla.
- El estado activo controla si participa o no.
- El padre controla dónde pertenece.
- Los componentes definen lo que hace.
- Las propiedades y etiquetas describen datos adicionales de la jugabilidad.
Ese es el núcleo de la construcción de escenas en Cave.
Una vez que entiendas las entities, el Scene Graph se vuelve mucho más que una lista de objetos. Se convierte en la estructura de tu mundo de juego.