Especiales

Introducción al uso de Mosaicos [NB Original]

Miércoles de desarrollo, hoy echamos un vistazo al uso de mosaicos en los videojuegos

Dentro de cada una de las áreas del proceso de desarrollo de videojuegos existen métodos y técnicas que hacen a los artistas y programadores avanzar de manera efectiva y más eficiente. Estas técnicas han evolucionado junto con los videojuegos e inclusive, han llegado a convertirse en rasgos característicos de algunos géneros.

En este post hablaremos del uso de tiles para desarrollar videojuegos, una técnica que nos ayuda a optimizar recursos de procesamiento así como en la creación de assets. Para evitar el uso de términos en inglés, utilizaremos el término mosaico cuando nos refiramos a tiles.

Los mosaicos han sido utilizados para desarrollar videojuegos desde el principio de esta industria. Las primeras consolas y computadoras contaban con recursos limitados por lo que los desarrolladores debían de buscar métodos inteligentes para hacer que los juegos se vieran lo mejor posible con la menor cantidad de recursos. Uno de las razones más importantes para el uso de mosaicos es evitar cargar gráficos de gran tamaño que hagan lento el juego.

Veámoslo con un ejemplo:

Super Mario Bros L1-2 Tiles (c) Nintendo

La imagen superior corresponde a una pantalla tomada del nivel 1-2 de Super Mario Bros. Como ustedes recordarán, los niveles eran muy repetitivos y contaban con muy poca variación. Aquí podemos ver los dos mosaicos principales utilizados en el nivel. Por medio de código estos mosaicos son repetidos para crear la geometría del nivel de tal manera que el procesamiento de imagen sea el mínimo requerido.

Con solo estas dos pequeñas imágenes de 64 x64 pxs se puede lograr  crear una imagen más grande que es el nivel completo, evitando procesar a la computadora una imagen de un tamaño muy grande.  Para concentrarnos en la parte de programación, dejaremos la explicación de cómo diseñar estos mosaicos para el área de arte.

¿Cómo comenzar a trabajar con los mosaicos?

Existen muchas metodologías que han evolucionado para el uso de mosaicos. Dependiendo del lenguaje, sistema, engine, objetivo entre muchos otros factores. Aquí trataremos de darles la introducción a una metodología para el uso de mosaicos utilizando FLASH como herramienta de desarrollo. No podemos asegurar sea la más utilizada, ni la más eficiente pero creemos es una de las más intuitivas y sabemos existen muchas referencia en línea que les podrán ayudar a complementar lo que aquí veamos.

Imaginen que a esta cuadrícula la numeramos de izquierda a derecha y de arriba debajo de 0 a N. Ahora tendremos una referencia para cada uno de los cuadros. El primero sería, [0,0] el segundo a la derecha seria [0,1], después [0,2] y así sucesivamente hasta llegar a [0,N]. Ahora el segundo hacía abajo sería [1,0], el siguiente [2,0], y así hasta llegar al [N,0]. Finalmente podemos deducir que el último de los cuadrados será el [N,N]. Ahora bien, esta es solo la estructura que se utilizará para tener la referencia dentro del código.

Super Mario Bros L1-2 Tiles (c) Nintendo

Ahora tenemos que definir qué imagen se representará en cada uno de estos cuadros. Para esto podemos utilizar un simple sistema de números, en Flash es sencillo de esta manera ya que se tiene el número de Frames, en otros lenguajes o se puede utilizar una combinación de letras y números. Dado que en este ejemplo solo tenemos 2 imágenes, utilizaremos los números “1” y “2 “ y en cada espacio vacío el número “0”. Una representación de esto es:

Super Mario Bros L1-2 Tiles (c) Nintendo

Los siguientes pasos.

En este post es muy difícil llegar a explicar completamente el uso de los mosaicos y el objetivo de éste es solo darles una introducción para que vean el potencial que tiene esta técnica. Para continuar y tocar el tema más a fondo, les recomiendo las siguientes ligas:

  1. Applications for Tile Engines in Flash Game Design (AS3)
  2. Tile Based Games (AS2)
  3. New tile based platform engine (AS2/AS3)
Tags

Lo Último


Te recomendamos