Especial 1: Port grafico de un escenariodel last Blade 2 en Megadrive
Como ya vimos en el tutorial de tiles, y en los tutoriales de programación de mapas, basicamente, si queremos poner un fondo de pantalla en MD, simplemente agarramos cualquier imagen, redimensionamos a 320×224, le adaptamos los colores a la paleta de megadrive, y listo. Ocupamos 1120 tiles. Pero que pasa si, necesitamos mostrar, por ejemplo, un escenario de un juego de peleas? porque el escenario, es mas amplio que 320×224, basicamente, son como poco 2 pantallas de largo. Ahi es donde viene el calvario, ya que hay que lograr que aunque el fondo sea mucho mas grande que la pantalla, no ocupe mas de los 1120 tiles. Luego viene otro problema, querremos poner, los personajes, las barras de energia..etc Asi que hice calculos: La megadrive puede guardar en memoria un maximo de 1344 tiles (43008 bytes de VRAM), pero los tiles 0 a 255 son reservados para fuentes (texto). SI no necesitamos texto, podemos comenzar a usar desde el tile 1, lo que nos deja 1343 tiles utiles. Otro punto a tomar en cuenta son los colores. Megadrive
puede mostrar en pantalla 64 colores, pero con condiciones. Como ejemplo de tiles, voy a hacer un fondo de un videojuego muy conocido, el Last Blade 2, y dos personajes.
Como muestro en el siguiente grafico, un
personaje ocupan un promedio de unos 90-100 tiles cada uno
Asi que de los 1343 tiles útiles, le restamos los 360 que nos reservamos, y nos quedarian = 983 tiles para el fondo. Ya tenemos calculados y echos los sprites, ahora vallamos al fondo de NeoGeo “Fire at Wadamoya” de 640×224 pixeles. Fondo: 640×224 = 143360 pixeles / 64 = 2240 tiles O sea, que solo disponemos de un 40% aprox de tiles
para trabajar, o lo que es lo mismo, tenemos que descartar un 60% de la
imagen original. Aqui viene el trabajo sucio connuestro editor grafico, ya hay que abrir la imagen original del fondo del NeoGeo, dividir en una cuadricula de 8×8 y buscar patrones, tiles similares, sitios muertos… Que significa esto? pues, que basicamente si dos trozos de 8×8 (1 tile) son iguales, solo ocupan el espacio de 1 tile, si varios tile tienen un mismo color, ocupan solo 1..etc Por ejemplo:
Trozo de 40×24 pixeles, 15 tiles original de neogeo
Asi que despues de 6 o 8 horas de trabajo, logre que este escenario de NeoGeo de 2240 tiles, quedara en solo 960 tiles!! menuda paliza me pegue buscando patrones, copiando pegando trozos… Y lo mas dificil, adaptar los 256 colores del NeoGeo a 14 colores. Lo peor fue que dentro de la paleta de la MD no encontre todos los colores necesarios, solo encontre 11 utiles. Asi que tuve que trabajar la imagen, y reducirla a 11 colores.
Original NeoGeo, ~256 colores, 2240 tiles
Modificado para Megadrive, 11 colores, 960 tiles
Aqui dejo la rom de megadrive, si alguien quiere provarla en un emulador. Solo muestra el fondo, y presionando A y izquierda+derecha se hace el scroll (Gracias Mairtrus por el codigo) Descargar Ejemplo fondo "Fire at Wadamoya" megadrive
|
|
2010 - TheElf |