Contribuyentes

sábado, 15 de enero de 2011

Python (programación de videojuegos con pygame)

Bien, hoy programaremos un videojuego sencillo con python, utilizando un módulo que permite la creación de videojuegos en dos dimensiones cuyo nombre es “pygame”. Pygame permite desarrollar y prototipar rápidamente videojuegos en 2 dimensiones, además de ser una interfaz para SDL (Simple Direct Layer) orientada para el dibujado en 2D.
Antes de iniciar a programar nuestro primer videojuego en python, es necesario conocer como está estructurada la anatomía de un videojuego, que nos servirá como referencia para poder desarrollar nuestro videojuego en pygame.
Un videojuego se compone de la siguientes características:
  • Entrada:
    Claramente un videojuego necesita comunicarse con el usuario de alguna manera, esto será a través de un dispositivo de entrada como un joystick o un teclado.
  • Visualización:
    Esta característica tiene que ver con la capacidad de transmitir el estado interno del videojuego a una salida gráfica. Ya sea que el videojuego sea en 2D o 3D, esta característica es importante, ya que, a partir de ella será fundamental el que sea agradable visualmente al jugador. Para este pequeño tutorial será en 2D, dadas las características de programación con las que trabajamos (el módulo pygame solo trabajo con Sprites en 2 dimensiones).

  • Sonido:
    Esta característica también es muy importante, ya que el audio proporcionado al jugador le transmitirá un conjunto de sensaciones que le permitirán determinar si el juego es agradable o no (pygame proveé un conjunto de herramientas para trabajar con audio de manera sencilla).

  • Comunicaciones:
    Actualmente los juegos en línea y más los juegos sociales van ganando más adeptos dentro del mercado de los videojuegos. Normalmente los videojuegos en línea utilizan comunicación TCP/IP, lo cual permite que juguemos con otras personas en nuestra red local o que se encuentra en otros lugares del globo. Como pygame está basado como una interfaz de SDL, nos permite maniobrar con este tipo de cosas, pero este tema sale de nuestro pequeño tutorial.

  • Game loop:
    Esta característica, tal como su nombre indica, es la que realiza el ciclo del juego y se encarga de realizar las actividades antes mencionadas. En la figura siguiente se muestra de manera sencilla como es que está estructurado el “Game Loop”.


Ya que hemos analizado como es que funciona un videojuego, procederemos a realizar el videojuego prometido. El videojuego que haremos será el clásico pong, el cual realizaremos en python, pero para eso lo empezaremos a hacer en el siguiente post, en el cual ya nos dedicaremos directamente a programar en python junto con el módulo pygame.

No hay comentarios:

Publicar un comentario