Criando um Jogo Simples com Pygame em Python
O Pygame é uma biblioteca muito popular no universo Python, usada para criar jogos 2D de forma simples e eficiente. Neste artigo, vamos construir um jogo simples, parecido com o clássico “desviar de obstáculos”, para você entender a base do desenvolvimento de jogos.
🔹 1. O que vamos criar?
Nosso jogo será um cenário simples:
Um quadrado (o jogador) que pode se mover para os lados.
Um objeto (inimigo) que cai de cima para baixo.
O jogador deve desviar do inimigo para não perder.
Esse exemplo já vai te ensinar os principais conceitos de Pygame:
Criar uma janela do jogo.
Desenhar objetos.
Capturar entradas do teclado.
Trabalhar com movimentação e colisões.
🔹 2. Instalando o Pygame
Antes de tudo, precisamos instalar a biblioteca:
pip install pygame
🔹 3. Estrutura básica de um jogo no Pygame
Um jogo em Pygame normalmente tem esta estrutura:
Inicialização da biblioteca (
pygame.init()).Criação da tela (a janela do jogo).
Loop principal do jogo (game loop), que contém:
Captura de eventos (teclado, mouse).
Atualização da lógica do jogo.
Renderização (desenhar objetos na tela).
🔹 4. Criando a janela do jogo
import pygame
import random
# Inicializar o Pygame
pygame.init()
# Configurações da janela
largura = 600
altura = 400
tela = pygame.display.set_mode((largura, altura))
pygame.display.set_caption("Jogo Simples com Pygame")
# Cores (RGB)
BRANCO = (255, 255, 255)
VERMELHO = (255, 0, 0)
AZUL = (0, 0, 255)
🔹 5. Criando o jogador e o inimigo
# Jogador
jogador_largura = 50
jogador_altura = 50
jogador_x = largura // 2 - jogador_largura // 2
jogador_y = altura - jogador_altura - 10
velocidade = 10
# Inimigo
inimigo_largura = 50
inimigo_altura = 50
inimigo_x = random.randint(0, largura - inimigo_largura)
inimigo_y = -inimigo_altura
inimigo_velocidade = 7
🔹 6. Loop principal do jogo
# Controle do loop
rodando = True
clock = pygame.time.Clock()
while rodando:
# Eventos (fechar janela, teclas, etc.)
for evento in pygame.event.get():
if evento.type == pygame.QUIT:
rodando = False
# Movimentação do jogador
teclas = pygame.key.get_pressed()
if teclas[pygame.K_LEFT] and jogador_x > 0:
jogador_x -= velocidade
if teclas[pygame.K_RIGHT] and jogador_x < largura - jogador_largura:
jogador_x += velocidade
# Movimento do inimigo
inimigo_y += inimigo_velocidade
if inimigo_y > altura:
inimigo_y = -inimigo_altura
inimigo_x = random.randint(0, largura - inimigo_largura)
# Verificar colisão
if (jogador_x < inimigo_x + inimigo_largura and
jogador_x + jogador_largura > inimigo_x and
jogador_y < inimigo_y + inimigo_altura and
jogador_y + jogador_altura > inimigo_y):
print("💀 Você perdeu!")
rodando = False
# Desenhar na tela
tela.fill(BRANCO)
pygame.draw.rect(tela, AZUL, (jogador_x, jogador_y, jogador_largura, jogador_altura))
pygame.draw.rect(tela, VERMELHO, (inimigo_x, inimigo_y, inimigo_largura, inimigo_altura))
# Atualizar a tela
pygame.display.update()
clock.tick(30)
pygame.quit()
🔹 7. Funcionamento
O quadrado azul é o jogador, controlado pelas setas do teclado (← e →).
O quadrado vermelho cai de cima para baixo.
Se houver colisão entre os dois quadrados → o jogo termina.
O inimigo sempre volta do topo da tela em uma posição aleatória.
🔹 8. Melhorias possíveis
Esse jogo é bem básico, mas você pode expandir:
✅ Placar de pontos – cada vez que o jogador desviar, ganha pontos.
✅ Velocidade progressiva – inimigo fica mais rápido com o tempo.
✅ Vários inimigos caindo ao mesmo tempo.
✅ Imagens e sprites no lugar dos quadrados.
✅ Efeitos sonoros e música de fundo com pygame.mixer.
🔹 9. Conclusão
Neste artigo, você aprendeu a:
Criar uma janela de jogo com Pygame.
Desenhar objetos na tela.
Capturar entradas do teclado.
Implementar movimentação, colisão e lógica básica de jogo.
Esse exemplo é apenas o começo! O Pygame oferece suporte a gráficos, sons, animações e até detecção de colisão avançada, permitindo criar desde mini-jogos até projetos mais elaborados.

Comentários
Postar um comentário