Crea tus Juegos con 8BPCursos

8BP: Cómo ahorrar memoria en los layouts del juego

5
(5)

¡Hola amigos de 8 Bits de Poder! En el artículo de hoy veremos como ahorrar memoria para tus layouts en 8BP.

Si tu juego tiene muchas pantallas y necesitas ahorrar espacio puedes utilizar muchas técnicas sencillas para ahorrar memoria. Una pantalla consume casi 0.5 KB de modo que es importante usar métodos para reducir su tamaño.

Descubre 8BP

La forma mas sencilla de hacerlo es editar las pantallas como si fuesen sprites. Las editas con SPEDIT (por ejemplo) y cada pixel representará un elemento del layout. Dependiendo del color, representará rocas, ladrillos, espacio vacio, agua, tierra, etc. Como hay 16 colores en mode 0 disponibles, tendrás 16 tipos de ladrillo. El sprite que generes lo tendrás que almacenar como una imagen más y antes de mostrarlo en pantalla, convertirlo a layout, explorando pixel a pixel y transformándolo en el código ASCII que necesites (esto te lo tendrás que programar en BASIC o como desees).

Ahorrar memoria en layouts

Si consideramos que usarás 5 líneas de caracteres para los marcadores del juego, una pantalla consumirá 20x20 píxeles= 400 píxeles = 200 Bytes. Por consiguiente, en 1KB te caben 5 pantallas y en 10KB te caben 50 pantallas. Habrás usado 4 bits por elemento de layout.

La edición de pantallas como si fuesen sprites es muy “visual”, aunque puedes decidir usar menos bits por elemento del layout. Si usas solo 2 bits, tendrás 4 tipos de elementos y también podrás editar pantallas como si fuesen imágenes, usando MODE 1.  En ese caso te cabrán 100 pantallas en 10KB. Si usas un número diferente de bits por ladrillo, la cosa se complica pues no puedes dibujar las pantallas como si fuesen sprites, pero te puedes programar algo que te convierta una imagen que dibujes en los bits que necesites.

Otra solución sencilla y eficaz consiste en definir cada layout con bloques grandes, por ejemplo, de 8x16 píxeles, y construir las pantallas definiéndolas con caracteres que podemos almacenar en memoria.

En el videojuego “Happy Monty”, se recrea la primera pantalla del Mutant Monty con una matriz de 16x10 caracteres =160 bytes, de modo que 25 pantallas ocupan 4 KB.  Es cierto que este layout tiene solo 16 bloques de ancho y no los 20 que puede llegar a tener, y además solo se definen 10 bloques verticalmente, en lugar de los 25 que tendría como máximo, pero así ocupa muy poca memoria y podemos crear muchas mas pantallas.

8BP: Cómo ahorrar memoria en los layouts del juego 2
ahorrar memoria
Layout definido con 160 caracteres.

¿Qué tal llevas tu juego con 8BP? En el próximo capitulo hablaremos de programación avanzada y lógicas masivas. Veremos como conseguimos lidiar con la velocidad de proceso de la información de Basic para conseguir que esta sea más rápida y eficiente.

Toda la información de 8 Bits de Poder la puedes encontrar en el repositorio Github de Jjaranda.

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuar!

Etiquetas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Publicaciones relacionadas

Botón volver arriba
Cerrar
Cerrar
Configuración de Cookie Box