HispaMSX

RE: Gráficos en juegos conversacionales

2005-04-09 20:42:07

--- En hispamsx(_en_)yahoogroups(_punto_)com, "Darth Fistro" <idrisbenali@y...>
escribió:

Hola :) Aquí vuelvo al ataque con un mensaje que colgué en la otra 
web.

Como forofo de los juegos conversacionales, una de las cosas que 
siempre me intrigó fueron los gráficos. ¿Cómo almacenar tantos 
gráficos? A ver si alguien me aclara algo... 

Jugando a las aventuras de Spectrum gracias a los emus, me doy cuenta 
de que en muchas aventuras, éstos se ven dibujarse casi como si fueran 
draws y lines. Eso sí, en Spectrum lo hacen a una velocidad bestial, 
supongo que porque el vídeo es más rápido en Spec que en MSX. Así que 
hice un editor que almacenaba las pantallas de la siguiente forma: un 
código para identificar la operación a realizar (círculo, punto, etc.) 
y coordenadas. Después un "descompresor" y todo sencillito (todo esto 
en BASIC). Las pantallas ocupan poco, pero claro, en cuanto quieres 
algo de complejidad, el tamaño se dispara. La solución no es muy buena 
 

La idea no es mala; pero puede llevar mucho trabajo crear pantallas
con cierto detalle. Una vuelta de tuerca es la que utilizaba un juego
como "Viaje al centro de la tierra" (no el de Topo... ;) ), que
utilizaba el macro lenguaje del draw para hacer cosillas mas
definidas; eso si, te morias viendo los paint rellenar zonas :P


Ya para MSX, recuerdo el Arquímedes XXI. Este fué el que me "enganchó" 
a los conversacionales. Sus pantallas son curiosas, puesto que están 
formadas por "píxeles" de 2x2, lo que me lleva a pensar que igual el 
tamaño original es la mitad y luego se amplían al mostrarlas, pero aún 
así ocuparía un mogollón. 

Pues creo que es el más práctico de todos los que comentas. Duplica el
tamaño de los pixels por lo que ya para empezar reduce por 4 el tamaño
de los datos. La definición de los colores la han portado del
spectrum, por lo que son bloques de 8x8, échale que llevaremos hasta
ahora unos 1500 bytes. Por último utiliza alguna técnica de compresión
que reduzca aún más el tamaño y teniendo en cuenta que son gráficos,
como poco se quedaría en unos 1000 bytes.

Si parece mucho...; pues entonces divides el programa en zonas y vas
cargando los paquetes de pantallas cuando se pase de fase, por ejemplo.


Después ví el Zakil Wood. Parece utilizar screen 2 y el dibujo está en 
la mitad superior de la pantalla. Hmmm... parece demasiado variado 
como para ser caracteres redefinidos, así que de nueva la pregunta es.
.. ¿cómo? 

Igual que el otro, son gráficos bitmap normales que seguramente
llevarán una buena rutina de compresión. En este caso no me atrevería
a asegurar que la tabla de colores fuese de 8x8.


Pues eso, a ver si alguien tiene alguna idea con la que ir 
experimentando. Sería ideal conocer los trucos que emplean los juegos 
comerciales  


Pues eso, básicamente, macrolenguajes gráficos (el Hobbit; sólo el
dibujo, los colores los vuelca a golpe de byte; así no te aburres con
el paint) o gráficos bitmap optimizados y comprimidos (Arquimedes XXI,
Zakil, etc).

¡Un saludo

Otro :)





<Anterior en la conversación] Conversación actual [Siguiente en la conversación>