Etiqueta: rectángulos

Tutorial de Tiles 1ª parte, el primer mapa

Escrito por el 1 mayo, 2012 | 6 comentarios

Como lo prometido es deuda, aquí tenemos el primer capítulo de una nueva serie de tutoriales, ésta vez centrados en una de las técnicas más antiguas y que mejores resultados a conseguido en el mundo de la programación de videojuegos: Los juegos de mapas basados en tiles (cuadrículas). Un mapa basado en tiles no es más que una matriz de dos dimensiones, por ejemplo mapa[filas][columnas]. En cada casilla de la matriz, metemos un objeto (o número) que indica el tipo de casilla que ocupa ese lugar. Todas las casillas ocupan el mismo tamaño, asi que luego, para pintar el mapa, sólo tenemos que ir recorriendo esa matriz, y pintando cuadrados con los colores o imágenes acordes al dato almacenado para esa posición.

Incluso podemos usar esa matriz, para detectar las colisiones. Por ejemplo, el valor 1 quiere decir que la casilla está vacía. Un 2, que es una pared infranqueable. Cuando ordenamos al personaje que se mueva, simplemente miramos en la matriz la posición a dónde queremos movernos. Si es una pared, entonces le impedimos al personaje dicho movimiento. Si es la casilla vacía, entonces lo movemos sin problemas. En resumen, ésta es la idea básica que hay que tener en mente.
» Leer la entrada entera

Etiquetas: , , , , , ,

Física en 2D, el tiro parabólico

Escrito por el 8 febrero, 2012 | 7 comentarios

Después de más de un mes de vacaciones, ha llegado la hora de crear un nuevo tutorial. Aunque tengo en el tintero unas cuantas lecciones sobre sonido, inteligencia artificial y matemáticas aplicadas,  he preferido hacer antes un jueguecito muy simple como excusa para empezar a ver algo de física básica, y ya ques estamos, un nuevo tipo de detección de colisiones entre círculos y rectángulos, con el que podrás enriquecer tus propios juegos.

En esta ocasión sigo utilizando la programación orientada a objetos que vimos en el tutorial sobre juegos en javascript, y prácticamente el esqueleto de la aplicación es el mismo: Un constructor, algunos métodos getter y setter para recuperar y establecer atributos, una clase principal con la función loop que funcionará como bucle del juego, y que será llamada contínuamente con un intervalo, y otras funciones auxiliares que sirven para notificar al juego algún cambio de estado, como son las detecciones de colisiones que afecten al estado del juego, y para obtener las entradas de datos con el que hacer funcionar el juego.

Aquí teneis un enlace para ver el juego en movimiento, y aquí teneis el ZIP para descargarlo y probarlo en local.

» Leer la entrada entera

Etiquetas: , , , , , ,

Gestionado con Wordpress y Stripes Theme Entradas (RSS) | Comentarios (RSS)