
Mastering Android Game Development
Raul Portales
- Editorial
- Packt
- Año
- 2015
- Páginas
- ~372
- Nivel
- Avanzado
De qué trata
Guía técnica avanzada elaborada por Raúl Portales dedicada al diseño y desarrollo de videojuegos 2D para Android utilizando exclusivamente el SDK nativo y Java (contextualizado en la etapa de Android 5.0 Lollipop, nivel de API 21). Está dirigida a desarrolladores Android de nivel intermedio a avanzado que ya comprenden la arquitectura de la plataforma y el ciclo de vida de los componentes, y buscan aprender a programar la arquitectura interna de un motor de juegos completo sin depender de motores de terceros como Unity o LibGDX.
El libro enseña la arquitectura interna de un motor de juegos, la estructuración de un bucle principal (game loop) con un hilo de renderizado dedicado sobre SurfaceView y Canvas, y el diseño de la capa de control de entradas mediante una clase InputController que unifica eventos táctiles, joysticks virtuales en pantalla y mandos físicos USB o Bluetooth gestionados con KeyEvent y MotionEvent. Detalla algoritmos de detección de colisiones (bounding boxes y circunferencias) con optimización de fases, sistemas de partículas programados a medida y apoyados en la librería Leonids (creada por el propio autor), gestión de audio con SoundPool para efectos de sonido rápidos y MediaPlayer para pistas musicales de fondo, diseño de interfaces de usuario y menús dentro del juego, animaciones cuadro a cuadro con AnimationDrawable y la integración de Google Play Games Services para logros y marcadores en la nube.
El aprendizaje se articula construyendo paso a paso un juego completo titulado YASS (Yet Another Space Shooter), un arcade de disparos espaciales que suma subsistemas capítulo a capítulo hasta portarse a pantallas grandes de Android TV con soporte para gamepads físicos. Su principal valor reside en mostrar con rigor técnico todo lo que ocurre bajo el capó de un motor 2D en Android sin cajas negras. Quedan fuera los motores 3D modernos basados en OpenGL ES avanzado o Vulkan, así como el uso de Kotlin o Android Jetpack, pero aporta fundamentos sólidos sobre optimización de hilos de dibujo, gestión de memoria para evitar pausas del recolector de basura y control de periféricos.
- Android SDK
- Game loop
- SurfaceView
- Leonids
- SoundPool
- Google Play Games Services
- Detección de colisiones
- Gamepads físicos
- Android TV
- Animación 2D
¿Cómo enseña?
Con proyectos
- ✗ Sin ejercicios
- ✓ Incluye proyectos
Proyectos
YASS (Yet Another Space Shooter)
Videojuego de disparos espacial en 2D desarrollado incrementalmente desde cero con el SDK nativo de Android y Java, que integra bucle de renderizado en hilo dedicado, joysticks táctiles y gamepads físicos, sistema de partículas Leonids, detección de colisiones y tablas de clasificación con Google Play Games Services.

