Esta técnica fué utilizada por muchos juegos 2D (saga Última, Diablo, Warcraft, etc.), especialmente los que tenían vistas isométricas, "top down" o lateral (como los juegos de plataformas).
¿Qué es un mapa de bloques? (tile maps)
Es una matriz bidimensional que contiene en cada elemento la "descripción"
de una pequeña parte de un gran mapa. En un juego, por ejemplo uno de vista
cenital (desde encima), el mapa podr¡a ser el siguiente:
0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 1 1 1 1 1 1 1 1 0 0 0
0 0 1 0 0 0 0 0 0 1 0 0 0
0 0 1 0 0 0 0 0 0 1 0 0 0
0 0 1 0 0 0 0 0 0 1 0 0 0
0 0 1 0 0 0 0 0 0 1 0 0 0
0 0 1 1 1 2 1 1 1 1 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0
el cual describe una habitaci¢n o un recinto cerrado, en esta matriz los
"0" son el suelo, los "1" son paredes y el "2" es una puerta. Ahora, si
implementamos un algoritmo que lea esta matriz e interprete cada elemento,
para luego pintar imagenes en vez de ceros y unos, lo que se lograría es
dibujar un mapa convincente. Lo que se hace es ir tomando cada elemento de
la matriz y, según su valor, pintar determinada imagen (bloque). En el
ejemplo anterior al leer un "0" se dibuja un bitmap que contiene la imagen
de un trozo de suelo, al leer un "1" se dibuja un pedazo de pared y al leer
un "2" se dibuja una puerta.
En
http://es.geocities.com/jaal81/Zip (EM2.zip), puedes encontrar un sencillo editor de "tile maps", que incluye todo el código fuente. Y si quieres puedes bajar esta pequeña (y antigua), pero útil, librería de gráficos para obtener código fuente acerca de los tile maps:
http://es.geocities.com/jaal81/Zip (Lib13H.zip)