
C++ Game Development Cookbook
Druhin Mukherjee
- Editorial
- Packt
- Año
- 2016
- Páginas
- ~346
- Nivel
- Intermedio
De qué trata
Compendio técnico en formato de recetario de Druhin Mukherjee orientado a desarrolladores intermedios de C++ que buscan diseñar e implementar los subsistemas fundamentales de un motor de videojuegos propio sin depender de herramientas prediseñadas. Requiere conocimientos previos sólidos de la sintaxis de C++ y familiaridad con los principios de programación orientada a objetos en entornos Windows o multiplataforma.
A través de más de 90 recetas prácticas e independientes, la obra examina componentes críticos de arquitectura de software y bajo nivel: programación orientada a eventos mediante la API de Windows (Win32), contenedores y algoritmos de la Standard Template Library (STL), patrones de diseño recurrentes en videojuegos (Singleton, Factory, Observer, Component, State), algoritmos de búsqueda y particionado espacial, inteligencia artificial (máquinas de estados finitos, árboles de decisión, algoritmo de navegación A* y bandadas con steering behaviors), física newtoniana 2D (vectores, aceleración, gravedad y colisiones elásticas), concurrencia con `std::thread` y cerrojos (`std::mutex`), programación de red con sockets TCP y UDP para conectividad multijugador, y manipulación de pistas de audio y optimización de memoria.
El libro guía la resolución de problemas técnicos aislados y la construcción de un prototipo de juego 2D dirigido por eventos sobre Win32, además de módulos ejecutables de física, navegación e intercambio de paquetes de red. Su principal aportación es transparentar cómo funcionan por dentro los subsistemas esenciales que dan vida a un motor comercial. Al ser un recetario enfocado en problemas específicos, no desarrolla una producción comercial unificada de principio a fin ni profundiza en pipelines de renderizado 3D moderno con shaders, por lo que resulta idóneo como manual de consulta y arquitectura de bajo nivel.
- C++11
- Patrones de diseño
- Estructuras de datos para juegos
- Algoritmos de pathfinding
- Win32 API
- Física 2D y colisiones
- Inteligencia artificial
- Multithreading (std::thread)
- Redes y sockets (TCP/UDP)
- Gestión y optimización de memoria
¿Cómo enseña?
Con ejercicios
- ✓ Incluye ejercicios
- ✓ Incluye proyectos
Proyectos
Prototipo 2D dirigido por eventos
Aplicación bidimensional construida directamente sobre la API de Win32 que ilustra la inicialización de la ventana, el bucle de mensajes del sistema operativo, el procesamiento de eventos de teclado y ratón y el dibujado básico.
Módulo de navegación e inteligencia artificial con A*
Sistema de cálculo de rutas y comportamientos de dirección (steering behaviors) que permite a entidades no jugadoras sortear obstáculos en una cuadrícula y perseguir objetivos de forma óptima.
Arquitectura de red cliente-servidor para multijugador
Infraestructura modular desarrollada con sockets TCP y UDP en C++ encargada de conectar clientes, serializar paquetes de juego y sincronizar el estado del mundo en tiempo real.

