Saltar la navegación

2. Módulos y clases

Los componentes principales en Pygame

Pygame es una librería de Python que está compuesta por módulos que controlan aspectos como gráficos, sonido y eventos, y clases que permiten crear y manipular superficies para dibujar, manejar imágenes y crear interactividad.

Módulos

Cada módulo en Pygame se encarga de una tarea específica. Por ejemplo, el módulo pygame.display controla la pantalla, permitiéndote crear ventanas, manejar su contenido y actualizar lo que se muestra al usuario.

Atributo/Función Descripción
set_mode(size) Configura la ventana o pantalla donde se dibuja el contenido. Recibe el tamaño en píxeles.
flip() Actualiza la pantalla completa, mostrando los cambios realizados en la ventana.
get_surface() Retorna la Surface que representa la pantalla principal.
update(rectangle) Actualiza una parte específica de la pantalla si se pasa un rectángulo como parámetro.

Clases

Pygame incluye varias clases que facilitan el desarrollo de juegos y aplicaciones multimedia. Una de las más importantes es la clase Surface, que actúa como un lienzo donde puedes dibujar formas, cargar imágenes y crear texturas.

Atributo/Función Descripción
blit(source, dest) Dibuja el contenido de una Surface (source) sobre otra Surface o pantalla (dest).
fill(color) Rellena la Surface con un color específico.
get_size() Retorna el tamaño de la Surface en píxeles.
get_rect() Retorna un objeto Rect que representa el área de la Surface, útil para detectar colisiones y manejar posiciones.

Ejercicio 1

Crear una ventana y dibujar un rectángulo

Objetivo: Familiarizarse con la creación de una ventana en Pygame y el dibujo de formas básicas en una Surface.

Instrucciones:

  • Crea una ventana de 800x600 píxeles utilizando pygame.display.set_mode().
  • Usa el método pygame.draw.rect() para dibujar un rectángulo rojo de 100x50 píxeles en el centro de la ventana.
  • Asegúrate de que el rectángulo se dibuje sobre un fondo blanco.

Ejercicio 2

Crear y Dibujar un Círculo en una Surface

Objetivo: Aprender a dibujar un cuadrado en una Surface y entender la relación entre la Surface y la ventana principal.

Instrucciones:

  • Crea una ventana de 640x480 píxeles.
  • Crea una nueva Surface de 300x300 píxeles.
  • Dibuja un cuadrado verde de 150 píxeles de lado en el centro de la Surface.
  • Rellena el fondo de la Surface con color rojo.
  • Copia la Surface en la ventana principal y muestra el resultado.

Ejercicio 3

Crear una Surface distinta

Instrucciones:

  • Introduce el siguiente código en tu editor de Pygame.
  • Ejecuta el código para ver cómo se muestra una Surface de 200x200 píxeles en la ventana principal.
  • Observa cómo la Surface se muestra en la ventana y cómo los colores están distribuidos.

Código de Referencia:

import pygame
import sys
# Crear la ventana principal
screen = pygame.display.set_mode((800, 600))

# Crear una nueva Surface de 200x200 píxeles
surface = pygame.Surface((200, 200))

# Definir colores
COLOR1 = (255, 0, 0)  # Rojo
COLOR2 = (0, 0, 255)  # Azul

# Rellenar la Surface con dos colores diferentes
# Primera mitad en rojo
surface.fill(COLOR1, rect=pygame.Rect(0, 0, 100, 200))
# Segunda mitad en azul
surface.fill(COLOR2, rect=pygame.Rect(100, 0, 100, 200))

# Copiar la Surface en la ventana principal
screen.blit(surface, (300, 200))

# Actualizar la pantalla
pygame.display.flip()

# Bucle principal
while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            sys.exit()
            

Surface (superficie)

¿Por qué es importante entender el concepto de superficie en Pygame, y cómo afecta el manejo de superficies al desarrollo de un juego?

Licencia: licencia propietaria intelectual

Creado con eXeLearning (Ventana nueva)