November 5, 2010

Pygame!


Dra. Elisa Schaeffer
Lab de lenguajes de Programacion Hora: V1

Pygame 1ra Parte
Bueno este post es sobre el modulo Pygame de Python que lo podemos utilizar para realizar animaciones, juegos, etc... 

En este primer tutorial lo que haremos será crear una pantalla y cargar una imagen en ella.

Empezamos como todo programa en python poniendo la ubicacion del intérprete de python

#!/usr/bin/python

Despues importamos el modulo pygamesys que lo necesitamos para limpiar y redibujar la pantalla

import sys, pygame

Iniciamos pygame

pygame.init()

Definiremos una variable con los valores del ancho y alto de la ventana que crearemos :

tamano = ancho, alto = 600, 400

Ahora en una variable crearemos nuestra ventana con la instrucción pygame.display.set_mode(), dentro de los paréntesis se define el tamaño de la ventana pero en nuestro caso ya tenemos una variable con las medidas:

ventana = pygame.display.set_mode(tamano)

Nuestro código hasta el momento esta asi:


Si lo ejecutamos asi lo que pasara es que la ventana que creamos se abrirá y se cerrara ya que no hemos creado un ciclo par aque la ventana se mantenga abierta hasta que nosotros la cerremos

El ciclo que ocupamos quedaría de la siguiente manera

while 1:
          for cerrar in pygame.event.get():
                  if cerrar.type == pygame.QUIT:sys.exit()

iniciamos nuestro ciclo con un while 1: esto quiere decir que cera constante hasta que nosotros lo terminemos.

for cerrar in pygame.event.get(): cerrar es una variable y con la instrucción pygame.event.get() le indicamos al programa que se cerrara cuando el usuario indique mediante el teclado, mouse, etc que quiere cerrar la ventana

if cerrar.type == pygame.QUIT:sys.exit() con la intrucción pygame.QUIT:sys.exit() indicamos que lo que el usuario va a hacer para salir de la ventana sera dar click en la tachita de cerrar.

El código hasta el momento esta asi:
Con esto ya ejecutamos nuestro código y podremos tener nuestra ventana y se quedara abierta 
 
Bueno ahora cargaremos una imagen en nuestra ventana

Para realizar esto yo descarge una imagen de Tux en formato .png y debemos tener la imagen en la misma carpeta donde se encuentra nuestro código

Ahora para cargar a nuestra imagen de Tux utilizaremos la instrucción pygame.image.load() esta instrucción debe estar despues de donde creamos nuestra ventana ventana = pygame.display.set_mode(tamano)

tux = pygame.image.load("Tux.png")

aqui cree una variable con esta instrucción, dentro del paréntesis se escribe el nombre de la imagen junto con su extensión

si ejecutamos nuestro código como lo tenemos ahorita la imagen de Tux no se cargara ya que no forma parte de la superficie de la pantalla lo que necesitamos hacer es que forme parte de la superficie de la pantalla eso lo hacemos son lo siguiente debajo de dond cargamos la imagen

ventana.blit(tux,(200,200))

ventana es nuestra variable donde creamos nuestra pantalla, blit indica que la imagen formara parte de la superficie de la pantalla, tux es nuestra imagen cargada y (200 , 200) son las coordenadas donde queremos que aparezca nuestra imagen.

Ahora lo que haremos es redibujar la pantalla pantalla para que la imagen aparezca de manera correcta esto se hace con la siguiente instruccion

pygame.display.flip()

Listo ya tenemos nuestro código terminado, que queda asi:



 
Ahora ejecutemos nuestro código y podremos ver a tux en nuestra pantalla



Pueden cargar las imagenes que uds quieran simplemente repitan la instrucción

ventana.blit(tux,(200,200)) y cambien las coordenadas

Solo que el orden en el cual apareceran en la pantalla será segun como esten en el código. Esto es que si la segunda imagen coincide en las coordenadas con la primera, la segunda estara sobre la primera.

Bueno esto es todo, espero les sea de gran ayuda, Saludos a todoss....

1 comment: