Cave: Guía de Inicio
Cave: Guía para comenzar
Lesson 12 of 19 • 50 XP
Keep your place in this quest
Log in or sign up for free to subscribe, follow lesson progress, and access more learning content.
Cave es un motor de juegos, lo que significa que te permite convertir tus ideas en videojuegos reales. Está diseñado para que puedas juntar todo, crear tus diseños de niveles, interfaces y lógica. Pero para la creación real del arte, como texturas, modelos 3D, animaciones, sonidos y música, es posible que prefieras usar una herramienta especializada para eso. Herramientas como Blender, 3Ds Max, Maya, Sketchup para 3D, Adobe Photoshop, GIMP, Krita para manipulación de imágenes o Audacity para sonido. Por supuesto, puedes usar cualquier otra herramienta externa para este propósito. Lo importante aquí es:
La mayoría de los juegos usan contenido creado fuera del motor.
Esto no es diferente en Cave. Esto significa que necesitarás importar esos archivos al motor, por lo que es esencial que entiendas cómo y cuáles son las buenas y malas prácticas. Importar es el paso que trae esos archivos a Cave para que puedan formar parte de tu proyecto.
Esta lección introduce el flujo de trabajo básico para importar.
Aprenderás:
- Qué tipos de archivos puede importar Cave.
- En qué se convierten los archivos importados dentro de Cave.
- Por qué las primeras importaciones simples son mejores que los grandes paquetes de assets.
- Cómo las importaciones de modelos pueden generar varios tipos de assets.
- Qué verificar después de importar.
El objetivo es ayudarte a entender qué sucede cuando los archivos externos se convierten en assets de Cave.
¿Qué se puede importar?
Cave puede importar varios tipos de contenido externo.
| Tipo de archivo importado | Se convierte en |
|---|---|
| Imágenes (varios formatos) | Assets de texturas. |
| Audio OGG | Assets de audio. |
| Fuentes TTF | Assets de fuentes. |
Archivos .cavePkg |
Paquetes de assets importados de Cave. |
| Modelos 3D | Mallas, materiales, texturas, armaduras, animaciones y plantillas dependiendo del archivo. |
Después de la importación, esos archivos se convierten en assets de Cave dentro del Asset Browser.
Eso significa que pueden usarse en Escenas, Materiales, Entidades y Plantillas de Entidad, UI, Sistemas de Audio, Scripts, Lógica, ¡en todas partes! Los archivos importados ya no son solo archivos sueltos en disco. Se convierten en contenido del proyecto que Cave puede referenciar, guardar, organizar y reutilizar.
Cave usa sus propios formatos
Cuando importas CUALQUIER archivo a Cave (imágenes, texturas, audios, modelos 3D, etc.), el asset es convertido al formato propietario y personalizado de Cave Engine. Esto es importante porque este formato interno es mucho más rápido de analizar y usar por el motor para brindar el mejor rendimiento posible a tu juego. Muchas optimizaciones internas y almacenamiento en caché se realizan automáticamente para asegurar que tus assets estén listos para producción de juegos.
> Todo eso es interno y no necesitas preocuparte por ello, pero es esencial que comprendas que este proceso ocurre y cómo te afecta (y por qué es bueno).
Si importas un archivo de imagen .png a Cave, el juego no usará el archivo png real en tu juego final. Pasa por un proceso rápido de conversión tan pronto como lo sueltas en el motor, y luego se usa el formato de Cave. Lo mismo sucede al importar un audio o un modelo 3D. Esta información es especialmente importante para los assets 3D también: Cave no usa formatos DCC en bruto como .fbx, .obj, .glb. Puede importarlos, pero son convertidos al formato del motor.
La razón por la que esto sucede es porque, aunque esos formatos son populares, analizar algo como un fbx o incluso un png en un juego es costoso y puede afectar el rendimiento. Por lo tanto, Cave extrae todos los datos necesarios, como Mallas, Materiales, Animaciones, Texturas, y luego los convierte y almacena en el formato del motor.
Esto tiene tres implicaciones importantes:
- Tu juego funcionará más rápido y pesará menos en disco.
- La importación de assets es destructiva: Cave no mantiene una referencia original de tu asset RAW, así que si haces un cambio externo, deberás importarlo nuevamente.
- Algunas funciones pueden no estar disponibles: Aunque algunos formatos están soportados, ciertas características pueden no ser compatibles con Cave. En ese caso, serás notificado y el proceso de importación no las incluirá en los assets finales.
Ahora que sabes sobre el proceso de importación, vamos a aprender cómo hacerlo.
Importar imágenes arrastrando y soltando
Puedes importar imágenes arrastrándolas al Asset Browser.
Cave soporta la mayoría de formatos comunes de imagen como:
- PNG.
- JPG y JPEG.
- TGA.
- BMP.
- HDR.
- PSD.
- PNM.
- GIF.
- PIC.
- DDS.
Las imágenes importadas se convierten en Texture Assets y pueden usarse en materiales, elementos UI, configuraciones del cielo y otros sistemas que necesiten datos de imágenes. Por ejemplo, una textura puede ser el mapa de color de un material de roca, un icono en la UI o una imagen de skybox para una escena.
Para una primera prueba, manténlo simple: importa una textura, asígnala a un material, coloca ese material en una malla dentro de la Escena, y verifica el resultado en la 3D View.
Importar archivos de audio
El audio también puede importarse arrastrándolo al proyecto. Actualmente, Cave importa archivos de audio OGG. Si tienes audio en otro formato, conviértelo a OGG antes de importar. Puedes encontrar herramientas en línea para esta conversión, pero también recomendamos el software Audacity, que es gratuito y muy fácil de usar para guardar audio en formato ogg.
Un archivo OGG es un contenedor multimedia libre y de código abierto desarrollado por la Fundación Xiph.Org. Se utiliza principalmente para transmitir y almacenar audio digital de alta calidad, a menudo logrando mejor calidad de sonido con tamaños de archivo menores que los MP3 tradicionales. ref
El audio importado se convierte en un asset de audio que puede usar cualquier parte del motor, por ejemplo, Componentes Reproductores de Audio, bloques lógicos o llamado mediante código Python. Ejemplo:
cave.playSound("My Audio File")
Buenas primeras importaciones de audio son cortas y fáciles de probar:
- Recoger una moneda.
- Clic en un botón.
- Apertura de una puerta.
- Un bucle simple de ambiente.
- Música para la banda sonora de tu juego.
Importar fuentes y paquetes de Cave
Cave puede importar archivos de fuentes TTF. TTF (TrueType Font) es un formato de archivo de fuentes originalmente desarrollado por Apple y más tarde adoptado por Microsoft, convirtiéndose en uno de los formatos estándar usados hoy para renderizar texto digital escalable.
Las fuentes se usan principalmente mediante el UI Element Component, permitiéndote crear HUDs, texto, menús, botones, subtítulos, créditos, interfaces de diálogo, etc. La elección de la fuente puede hacer una gran diferencia, incluso en un menú simple.
Importar paquetes de Cave
También puedes importar archivos .cavePkg. Un paquete de Cave es un paquete de assets que puede importarse en otro proyecto.
Si vas al Asset Browser y haces clic derecho en una carpeta o archivo, podrás exportarlo como un paquete de Cave. Al exportar un paquete, podrás importarlo después en otros proyectos. Esto es muy útil para compartir lógica común entre tus proyectos. Ten en cuenta que al exportar un paquete, sólo se incluirá lo que esté dentro de la carpeta o asset sobre el que hiciste clic derecho. Así que si quieres exportar, por ejemplo, un material que usa un conjunto de texturas, es importante poner todo junto en una carpeta y luego exportar la carpeta. De otro modo, si sólo importas el material, las texturas no se incluirán.
Cuando arrastras y sueltas un paquete de Cave en el Asset Browser de CaveEngine, será importado y la estructura original de archivos exportada se recreará en tu proyecto existente. Muy útil, nuevamente, para compartir assets reutilizables, traer contenido predeterminado a un proyecto nuevo o mover piezas entre diferentes proyectos.
Importar modelos 3D
Llegamos a una de las partes más importantes de un motor de juegos 3D, que es la importación de modelos 3D. Cave usa assimp para soportar una amplia variedad de formatos de modelos 3D mediante su importador de modelos.
Soporta múltiples formatos de modelos a través del importador, pero FBX es el formato principal recomendado para Cave.
Las importaciones de modelos pueden generar varios tipos de assets a la vez:
- Mallas.
- Materiales.
- Texturas.
- Armaduras.
- Animaciones.
- Plantillas de Entidad.
El resultado exacto depende del archivo original.
Una caja simple puede generar sólo una malla, material, textura y plantilla. Un personaje animado puede generar mallas, una armadura, animaciones, materiales, texturas y una plantilla más compleja.
Importaciones recomendadas para comenzar
Para tus primeras pruebas de importación, usa assets simples y limpios. Kenney Asset Packs (CC0) son una buena opción para principiantes porque suelen estar bien organizados, ser livianos y fáciles de entender. También puedes revisar Quaternius Assets (CC0) o navegar por FAB Asset Store.
Buenas primeras importaciones pueden ser una caja, una roca, un árbol low-poly, un edificio simple o un personaje. Evita empezar con un paquete gigante de personajes o un archivo enorme de ambiente. Assets simples facilitan entender qué crea Cave, qué configuraciones importan y cómo aparecen los contenidos importados en el Asset Browser. Luego puedes pasar a configuraciones más complejas.
Importar un modelo paso a paso
Al arrastrar y soltar un asset (como FBX) en el Asset Browser de Cave, verás una ventana como esta:

Soporta arrastrar y soltar varios archivos a la vez, y se creará una pestaña por archivo. Por cada pestaña, podrás seleccionar los assets que quieres importar. Esto también te mostrará qué tipos de assets y, si expandes cada encabezado, qué assets fueron reconocidos y convertidos por el Importador de Cave. Además, te permitirá seleccionar individualmente qué quieres importar o no, y renombrar los archivos acorde. Puedes cambiar los nombres de los assets importados después también.
En la parte superior, antes de cada pestaña de archivo, encontrarás dos opciones globales (por importación de activo):
- La opción de Settings, que te permite seleccionar si quieres crear una subcarpeta para el activo importado o no, o si quieres generar física automáticamente en la Entity Template que será creada por el motor.
- Y también las opciones de Filters, que son útiles cuando estás importando decenas de assets y nodos, y solo te interesa una cosa específica en el archivo, como la malla.
Una importación básica de modelo suele verse así:
- Crea o elige una carpeta en el Asset Browser.
- Arrastra el archivo del modelo a esa carpeta.
- Espera a que Cave analice el archivo.
- Revisa las opciones de importación.
- Elige qué assets generados deben importarse.
- Ajusta la escala de importación si es necesario.
- Confirma la importación.
- Inspecciona los assets generados en el Asset Browser.
Las opciones de importación pueden mostrar los assets generados agrupados por tipo.
Esto te permite decidir qué debe importarse en lugar de aceptar todo ciegamente. Esto es útil porque los archivos de modelos pueden contener más datos de los que realmente necesitas.
TIP IMPORTANTE:
Si estás descargando cientos de assets o un paquete de assets, como el de Kenney o Quaternius, notarás que esos paquetes generalmente tienen un archivo FBX diferente por objeto, y dentro de cada FBX, hay una copia del material y a veces incluso de la textura que se usará en todos esos assets.
Si arrastras y sueltas todos esos assets que contienen una copia del mismo material en cada archivo, Cave, como era de esperar, también importará todas las copias, generando una gran cantidad de datos innecesarios en tu proyecto y eventualmente haciendo que el rendimiento de tu juego sea ineficiente. Eso no es un fallo del motor, es simplemente porque hay una copia de los materiales en cada archivo FBX.
La mejor práctica en este caso es primero importar un solo archivo FBX en el motor, revisar qué hay dentro de ese archivo, confirmar el material en él. Una vez que ese primer archivo se importe y el material esté en tu proyecto, importas todos los demás usando los filtros para desactivar la importación de materiales y texturas, ya que esos ya fueron importados por el motor con tu primer archivo. Entonces, cuando confirmes la importación, Cave intentará localizar ese material ya importado por nombre y usarlo en su lugar.
Entendiendo las Mallas Importadas
Un modelo importado puede generar una o muchas mallas. Esto depende de cómo fue construido el modelo en la herramienta DCC original.
Por ejemplo:
| Modelo Fuente | Resultado Posible de Importación |
|---|---|
| Caja simple | Una malla, un Material, una Entity Template. |
| Objeto con partes separadas | Varias mallas y Materiales, una Entity Template. |
| Personaje animado | Mallas, Armadura y animaciones, una Entity Template. |
Después de la importación, inspecciona los assets de malla generados y la Entity Template generada.
Observa que para cada importación, se generará una Entity Template.
La Entity Template trata de replicar las configuraciones de la escena construidas por ti en tu herramienta DCC, como Blender. Entonces, si creaste una disposición en tu software de modelado, colocando objetos en ciertos lugares, etc., estará reflejado como una entity template. Normalmente no usarás la entity template en crudo, pero es útil para arrastrar los objetos a la escena para identificarlos rápidamente o para hacerlos locales en lugar de usar una plantilla y empezar a editar en Cave.
Una vez importes tu asset, verifica problemas comunes:
- ¿El objeto es demasiado pequeño?
- ¿Es demasiado grande?
- ¿Está rotado de forma incorrecta?
- ¿Se dividió de manera inesperada?
- ¿La plantilla generada luce correcta?
Es mejor detectar estos problemas inmediatamente en lugar de después de haber usado el asset en un nivel.
Si encuentras algún problema con los assets que importas, vale la pena abrirlos en Blender o cualquier DCC para verificar si son correctos. También recomendamos que triangules las mallas del asset antes de importarlo a Cave.
IMPORTANTE: Cuando importas un modelo 3D en Cave, automáticamente intenta triangulación de las caras. Pero a veces, puede haber errores en la triangulación que causan que tu modelo 3D tenga "agujeros" o caras mal creadas. Para evitar esto, siempre recomendamos que vayas a tu herramienta DCC y triangules las caras tú mismo.
Entendiendo Materiales y Texturas
Los modelos importados también pueden generar materiales y texturas.
Un material controla cómo se ve una superficie. Una textura proporciona datos de imagen usados por el material.
Después de importar, siempre revisa el material:
- ¿Está asignada la textura albedo?
- ¿Están correctamente asignados los mapas normales?
- ¿Se importaron mapas de rugosidad o metálicos?
- ¿El material se ve correcto en el viewport?
Las importaciones son útiles, pero no son magia.
Es normal ajustar materiales luego de la importación. Por ejemplo, puedes necesitar modificar la rugosidad, arreglar una textura que falta, o elegir una configuración mejor de material para el estilo visual de tu juego.
Mallas Multimaterial
En Cave, una malla usa un único material. Si un objeto en tu herramienta DCC usa varios materiales, Cave representa eso como varias mallas.
Un entity todavía puede tener múltiples Mesh Components, así que el objeto final puede verse igual en la escena. La estructura solo es diferente:
Objeto con Múltiples Materiales
Mesh Component usando Material A
Mesh Component usando Material B
Mesh Component usando Material C
Esto le da a Cave una relación limpia de una malla por un material mientras permite que objetos importados complejos se vean correctamente.
Debido a cómo funciona Cave, si importas una malla multimaterial en tu proyecto, notarás que en el asset browser, la malla estará dividida en diferentes partes. Pero Cave intentará recrear la entity final en la Entity Template para ti con todas las mallas combinadas.
Entity Template Importada
Al importar un modelo, Cave crea una Entity Template que representa la configuración original. Esta plantilla es útil porque preserva la composición prevista tanto como sea posible.
Por ejemplo, un edificio importado podría generar:
- Varios assets de mallas.
- Varios assets de materiales.
- Assets de texturas.
- Una Entity Template que reúne las partes.
Esa plantilla suele ser el asset más fácil de arrastrar a la escena.
Si el objeto importado se ve correcto como plantilla, puedes reutilizarlo como cualquier otra template de Cave. El objetivo es llevar esos assets a las escenas y convertirlos en espacios jugables.
Consejos Básicos para la Importación
Mantén limpias las importaciones:
- Prefiere FBX para modelos.
- Triangula las caras antes.
- Usa OGG para audio.
- Mantén nombres de assets legibles.
- Prefiere nombres con espacios o PascalCase.
- Importa en carpetas organizadas.
- Verifica la escala de importación.
- Inspecciona los materiales generados.
- Prueba la plantilla importada en el viewport.
- Guarda después de importar.
Importar es una parte normal del desarrollo.
Hazlo en pequeños pasos, inspecciona el resultado y sigue construyendo. Un flujo de trabajo limpio de importación te ahorrará mucho tiempo cuando tu proyecto empiece a usar más contenido personalizado.