
Python Game Programming By Example
Alejandro Rodas de Paz, Joseph Howse
- Editorial
- Packt
- Año
- 2015
- Páginas
- ~231
- Nivel
- Intermedio
De qué trata
Obra práctica y enfocada en proyectos escrita por Alejandro Rodas de Paz y Joseph Howse para Packt Publishing, que explora el panorama del desarrollo de juegos en Python 3 a través de múltiples librerías y tecnologías complementarias. Está pensada para programadores intermedios que ya dominan la sintaxis de Python y los fundamentos de la programación orientada a objetos (clases, métodos y herencia), pero buscan comprender la arquitectura de software y patrones de diseño aplicados a diferentes géneros de videojuegos.
El contenido destaca por su diversidad tecnológica: arranca con la biblioteca estándar Tkinter y su widget Canvas; salta al framework 2D cocos2d (apoyado en Pyglet) para gestionar escenas, capas, transiciones, acciones y mapas de teselas elaborados con Tiled Map Editor; utiliza NumPy para modelar sistemas de partículas y comportamientos de dirección autónomos (steering behaviors como seek, flee, pursuit, evasión y esquiva de obstáculos); integra Pygame con PyOpenGL para introducir el renderizado, cámaras y mallas en 3D; y finaliza con visión por computador mediante OpenCV para reconocer elementos físicos.
El núcleo del libro consiste en la construcción completa de siete proyectos heterogéneos: un clon de Breakout/Pong en Tkinter, un matamarcianos retro (Cocos Invaders), un juego de estrategia estilo Tower Defense, una simulación espacial de atracción gravitatoria con naves autónomas gobernadas por IA, un prototipo de plataformas en 3D y un sistema interactivo de damas jugado con tablero físico frente a una cámara web. Su principal virtud es mostrar alternativas potentes más allá de Pygame tradicional; como contrapartida, al abarcar tantos entornos distintos, no profundiza exhaustivamente en la optimización ni en el despliegue para producción de ninguna de las herramientas.
- Python 3
- cocos2d
- Pygame
- PyOpenGL
- Tkinter
- NumPy
- OpenCV
- Tower Defense
- Steering Behaviors
- Tiled Map Editor
- Visión por computador
¿Cómo enseña?
Con proyectos
- ✗ Sin ejercicios
- ✓ Incluye proyectos
Proyectos
Hello, Pong! / Breakout
Recreación del clásico juego de romper bloques programada sobre el widget Canvas de Tkinter en Python, gestionando la paleta, la pelota, colisiones directas y rebotes mecánicos.
Cocos Invaders
Matamarcianos 2D estilo Space Invaders desarrollado con cocos2d que utiliza jerarquías de capas, acciones de movimiento, disparos de proyectiles, oleadas enemigas y visualización de puntuación en un HUD.
Tower Defense Game
Juego de estrategia defensiva con torretas construido con cocos2d y niveles diseñados en Tiled Map Editor, gestionando rutas de avance enemigo, transiciones de pantalla y menús.
Simulador de gravedad y comportamientos autónomos
Juego de combate espacial 2D donde naves controladas por IA calculan aceleraciones gravitatorias y trayectorias de búsqueda, evasión y patrulla mediante operaciones vectoriales con NumPy.
Plataformas 3D con Pygame y OpenGL
Prototipo de videojuego tridimensional que combina la inicialización de contexto y captura de eventos de Pygame con la proyección de primitivas, luces y cámara espacial mediante PyOpenGL.
Juego de mesa aumentado con visión artificial
Aplicación interactiva que procesa las imágenes de una cámara web mediante OpenCV para identificar el tablero y las fichas reales de una partida de damas, sincronizándolas con la lógica en Python.

