Estoy empezando a montar un mapa con varias pantallas...
De momento he montado 9, para poder comprobar todas las entradas salidas, conexiones etc...
La cosa ya se está "engordando"... he alcanzado los 19 kb...
Osea, mola meter 1000 graficos, pero me como ram.
Mola meter 1000 pantallas, pero me como ram.
Necesito reservar logicamente, espacio para la logica del programa, etc.
Me pregunto... ¿como calcular un equilibrio mapas/sprites?
¿alguna pista/idea?
Z88DK (curso Radastan) - Dudas Varias
Moderador: na_th_an
- Hark0
- Mensajes: 96
- Registrado: Mar, 28 Ene 2014, 07:42
- Ubicación: Cornellà de Llobregat - Barcelona
- Contactar:
Re: Z88DK (curso Radastan) - Dudas Varias
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica
Re: Z88DK (curso Radastan) - Dudas Varias
Amigo, eso es bien jodido
Si ya tuvieses el motor terminado, podrías ver cuánto te queda libre y equilibrar así.
Ten muy presente cuánto te ocupa una pantalla y cuánto te ocupa cada gráfico/sprite. Por ejemplo, en la churrera, como los movimientos son a pixel los gráficos de los sprites ocupan mucho más. Cada frame de sprite ocupa como dos pantallas del mapa... En tu caso el ratio no es tan heavy.
También puedes intentar tirar con lo que tienes y si te ves picueto de memoria buscar una forma de comprimir el mapa, como la que propone A. Villena, con la que se consigue muy buen ratio de compresión.
![Sonrisa :)](./images/smilies/icon_e_smile.gif)
Ten muy presente cuánto te ocupa una pantalla y cuánto te ocupa cada gráfico/sprite. Por ejemplo, en la churrera, como los movimientos son a pixel los gráficos de los sprites ocupan mucho más. Cada frame de sprite ocupa como dos pantallas del mapa... En tu caso el ratio no es tan heavy.
También puedes intentar tirar con lo que tienes y si te ves picueto de memoria buscar una forma de comprimir el mapa, como la que propone A. Villena, con la que se consigue muy buen ratio de compresión.
Como diría Rorshach: "Urm..."
Re: Z88DK (curso Radastan) - Dudas Varias
Pues mira, mi experiencia haciendo el juego para Interface II que debe ocupar 16K como máximo:
- Un mapa de 1000 pantallas es absurdo, es más, según te lo curres incluso uno de 8x8 pantallas es todo un Mundo.
- Cada pantalla no tiene porqué ocupar todo el área visible, haz el área visible más pequeñita y podrás engordar el mapa artificialmente (y queda mono).
- Como bien dices 1000 tiles molan, pero lo mismo con 96 sobra.
Un ejemplo:
- Pantalla de 16x8 tiles (marcador abajo de 4 caracteres de alto)
- Mapa de 8x8 pantallas
Eso da 8192 bytes, 8K, para el mapa. No es un disparate, pero puedes recortar la pantalla a 10x10 tiles y se te queda el mapa en 6K nada más. 64 pantallas es tela de grande.
Pero vamos, que llevas 18K ocupados, tampoco es tanto. Mete el mapa completo y todos los tiles, aunque haya tiles y pantallas vacías, y sabrás exactamente lo que queda de código.
La otra opción es meter compresión de mapas, pero no creo que te haga falta a menos que seas muy burro.
- Un mapa de 1000 pantallas es absurdo, es más, según te lo curres incluso uno de 8x8 pantallas es todo un Mundo.
- Cada pantalla no tiene porqué ocupar todo el área visible, haz el área visible más pequeñita y podrás engordar el mapa artificialmente (y queda mono).
- Como bien dices 1000 tiles molan, pero lo mismo con 96 sobra.
Un ejemplo:
- Pantalla de 16x8 tiles (marcador abajo de 4 caracteres de alto)
- Mapa de 8x8 pantallas
Eso da 8192 bytes, 8K, para el mapa. No es un disparate, pero puedes recortar la pantalla a 10x10 tiles y se te queda el mapa en 6K nada más. 64 pantallas es tela de grande.
Pero vamos, que llevas 18K ocupados, tampoco es tanto. Mete el mapa completo y todos los tiles, aunque haya tiles y pantallas vacías, y sabrás exactamente lo que queda de código.
La otra opción es meter compresión de mapas, pero no creo que te haga falta a menos que seas muy burro.
- Hark0
- Mensajes: 96
- Registrado: Mar, 28 Ene 2014, 07:42
- Ubicación: Cornellà de Llobregat - Barcelona
- Contactar:
Re: Z88DK (curso Radastan) - Dudas Varias
Os entiendo a ambos...
Estoy en una fase bastante inicial y tengo en mi cuaderno cuadriculado de toda la vida un mapa más / menos planteado...
Lo que tengo claro es que las pantallas las quiero de 32x20; si meto "marcos" para encoger la pantalla no tiene porqué desmerecer (basta ver todo lo que hay ya) pero soy partidario de llenar la pantalla con el mapa en todo lo que pueda.
Como comentáis es difícil porque estoy ante la tesitura de hacer el mapa más detallado (más tiles) ó recortarlo...
Creo que de momento iré puliendo el "motor mainloop" con las 9 pantallas que tengo y cuando esté "limpio, etc" voy engordando la cosa...
Una cuestión más:
¿Tarda lo mismo pintar una pantalla usando put_sprite16 que usando put_h1_Sprite (2 pasadas)? Tengo muchos tiles de 8x8 que podria aprovechar...
EDITO: Gracias por vuestra paciencia conimgo![Guiño ;)](./images/smilies/icon_e_wink.gif)
Estoy en una fase bastante inicial y tengo en mi cuaderno cuadriculado de toda la vida un mapa más / menos planteado...
Lo que tengo claro es que las pantallas las quiero de 32x20; si meto "marcos" para encoger la pantalla no tiene porqué desmerecer (basta ver todo lo que hay ya) pero soy partidario de llenar la pantalla con el mapa en todo lo que pueda.
Como comentáis es difícil porque estoy ante la tesitura de hacer el mapa más detallado (más tiles) ó recortarlo...
Creo que de momento iré puliendo el "motor mainloop" con las 9 pantallas que tengo y cuando esté "limpio, etc" voy engordando la cosa...
Una cuestión más:
¿Tarda lo mismo pintar una pantalla usando put_sprite16 que usando put_h1_Sprite (2 pasadas)? Tengo muchos tiles de 8x8 que podria aprovechar...
EDITO: Gracias por vuestra paciencia conimgo
![Guiño ;)](./images/smilies/icon_e_wink.gif)
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica
Re: Z88DK (curso Radastan) - Dudas Varias
$this->bbcode_second_pass_quote('Hark0', '')Tarda lo mismo pintar una pantalla usando put_sprite16 que usando put_h1_Sprite (2 pasadas)? Tengo muchos tiles de 8x8 que podria aprovechar...
Evidentemente tarda bastante más.
Tu hazlo todo con tiles de 16x16 que el concepto de megatiles ya lo explicaré más adelante. Se basa en usar combinaciones de tiles, de varios tamaños, para hacer otro más grande. De esa forma, si en el mapa se repiten muchos patrones, puedes ahorrar mucha memoria y tener un mapa más grande.