martes, 2 de noviembre de 2010

Pygame

Pygame es un conjunto de módulos o librerías para el lenguaje Python, que nos permite poder crear videojuegos en 2 dimensiones. Esta orientado a objetos scripts.


Para poder instalar esta librería basta con poner el siguiente comando desde la terminal:
"sudo apt-get install python-pygame"



Ya que este instalado pondré primero las cosas básicas, en este caso como crear una ventana:
--------------------------------------------------------------------------------------------------------
import pygame --->esto es para importar la librería pygame
from pygame.locals import *
WIDTH = 640 ---> ancho de la ventana, dependiendo de los valores aumenta o disminuye
HEIGHT = 480 ---> altura de la ventana, dependiendo de los valores aumenta o disminuye
def main(): ---> definir los siguientes comandos
screen = pygame.display.set_mode((WIDTH, HEIGHT)) ---> este comando es para poner la ventana
pygame.display.set_caption("lab progra web") --->aqui podemos poner el titulo de nuestra ventana

while True: --->este ciclo while infinito hace que la ventana no se cierre, ya que si no lo pusieramos la ventana se cerraria al momento de ejecutar el programa

for eventos in pygame.event.get():
if eventos.type == QUIT:
sys.exit(0)

return 0
if __name__ == '__main__': --->aquí cerramos lo que seria el programa para crear nuestra ventana
pygame.init()
main()

--------------------------------------------------------------------------------------------------------

Al final nos quedaria una ventana como esta:



Ya que hallamos hecho la ventana ahora le agregaremos una imagen de fondo a nuestra pantalla.
Para esto agregaremos los siguientes comando en el código anterior:
-------------------------------------------------------------------------------------------------------------------------------
def load_image(filename, transparent=False): -->definimos la función para la ruta de la imagen
try: image = pygame.image.load(filename) ---> le asignamos la variable a la imagen a través de pygame

except pygame.error, message:
raise SystemExit, message
image = image.convert() -->aquí convertimos la imagen al tipo de imagen de pygame
if transparent:

color = image.get_at((0,0)) -->esto sirve por si la imagen tiene transparencia manda a llamar a las siguientes 2 lineas, es decir para que pygame tome el píxel superior izquierdo como transparente

image.set_colorkey(color, RLEACCEL)
return image --->aqui regresamos la imagen, como si fuera un ciclo para que no se quite
background_image = load_image('galaxia.jpg') -->aquí debemos de poner el nombre de la imagen que pongamos

screen.blit(background_image, (0, 0)) -->esto nos sirve para la posición de la imagen, se manejan como coordenadas, y puedes ajustar la posición de la imagen.
pygame.display.flip()

-------------------------------------------------------------------------------------------------------------------------------

Al final nos quedaría el código así y la siguiente ventana:
------------------------------------------------------------------------------------------------------
import sys, pygame
from pygame.locals import *
WIDTH = 640
HEIGHT = 480
def load_image(filename, transparent=False):
try: image = pygame.image.load(filename)
except pygame.error, message:
raise SystemExit, message
image = image.convert()
if transparent:
color = image.get_at((0,0))
image.set_colorkey(color, RLEACCEL)
return image
def main():
screen = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption("lab progra web")
background_image = load_image('galaxia.jpg')
while True:
for eventos in pygame.event.get():
if eventos.type == QUIT:
sys.exit(0)
screen.blit(background_image, (0, 0))
pygame.display.flip()
return 0
if __name__ == '__main__':
pygame.init()
main()
------------------------------------------------------------------------------------------------------
Captura:



Nota: al momento de escoger la imagen, deben de guardarla en la misma localizacion del codigo para que cargue, y asignarle el mismo nombre.








1 comentario: