Godot 4 Devlog #2: Aprovechando Resources para múltiples objetos
Estos días me tope con la siguiente duda. ¿Cómo puedo tener variedad de objetos de un mismo tipo?
Hasta ahora tenia un cupcake, por lo que armé una escena (cupcake.tscn) y su script (cupcake.gd). Luego se me ocurrió que podría agregar, por ejemplo, una galletita rellena. Pero la escena y el script para este nuevo objeto quedaron casi idénticos a los que había hecho para el cupcake. Solo variaba el Sprite. Es decir, a veces hay cierta información que cambia para distintos tipos de un mismo objeto (sprite, nombre, quizás precio, tiempo de cocción y muchas otras cosas que se nos puedan ocurrir) pero la estructura y la lógica se mantiene igual.
Bueno, investigando parece que los Resources son la solución para este problema.
Resources
Los recursos en Godot son contenedores de datos. No tienen lógica (no estoy 100% seguro de esto, sigo aprendiendo), sino que proveen información a los nodos.
Crear un recurso es sencillo, solo hay que extender de la clase Resource
extends Resource class_name TipoComida @export var nombre: String = "<nombre>" @export var imagen: Texture2D
Y luego, utilizando el editor, se pueden crear distintos recursos a partir de este "template":
Pero, ¿Cómo se podría usar esto?
Bueno, a mi se me ocurrió crear un objeto Estante el cual puede ser configurable para, entre cosas, definir que tipo de objetos contener. Por ejemplo, en mi escena de prueba, configuré dos estantes con distintos parámetros:
El parámetro Tipo Comida es de tipo Resource. Fácilmente puedo cambiar el valor en el desplegable para usar algún otro tipo de comida sin tener que modificar el código en el estante o sin tener que agregar una escena nueva para el nuevo elemento.
Y este es el resultado al jugar:
¿Utilizan Resources en sus proyectos? ¿Tienen algún truco o mejora para manejarlos? ¿Han encontrado otros patrones similares para simplificar el desarrollo en Godot?
Aprendiendo Godot
Status | In development |
Author | algiorgi |
Tags | devlog, game-development, Godot |
More posts
- Aprendiendo Godot 4 #161 days ago
Leave a comment
Log in with itch.io to leave a comment.