En este libro aprenderemos a programar videojuegos y sobre todo mucho JavaScript. Hacer videojuegos es uno de los retos más complejos a los que se puede hacer frente, controlando dispositivos del ordenador como el teclado, el ratón, el sonido y la pantalla. Pero además, se debe construir una buena estructura y jerarquía de clases POO que desarrollen el guión del videojuego al ritmo de las acciones del usuario. Por si todo esto fuera poco, también se deben tener conocimientos de diseño gráfico e interfaces. Sin plugins ni frameworks, con JavaScript puro, desarrollaremos el videojuego Asteroides de principio a fin y partiendo de la nada. Siempre enfocado en el desarrollo de videojuegos, a lo largo del libro se explican conceptos de programación como: - Controlar los distintos dispositivos del ordenador (teclado, ratón, sonido, pantalla)
- Creación de nuestra propia librería gráfica capaz de cargar y mostrar todas las imágenes que necesita nuestro videojuego a la que añadiremos funciones para crear mapas de tiles, sprites animados o detectar colisiones.
- Las bases de la Programación Orientada a Objetos (POO) a partir del videojuego que queremos crear
- Los diferentes tipos de entidades lógicas del juego como enemigos, asteroides, disparos, bonus, jugador, explosiones, etc.
- Diseñar toda la interfaz del videojuego con sus diferentes pantallas y mantenerla actualizada durante el juego.
- Añadir opciones de configuración al juego donde el usuario podrá activar/desactivar música, configurar el teclado o añadir el nick del jugador.
- Crear una pantalla de récords y añadir la puntuación del jugador en cada nueva partida.
- Buscar los recursos gráficos y de sonido necesarios para nuestros videojuegos, adaptarlos a nuestras necesidades y respetar los derechos de autor.
- Algunos extras que, aunque no se explica con detalle en este libro, sí se muestran las técnicas para crear mapas de tiles (tilemaps), elementos gráficos articulados (jefes finales), diferentes tipos de enemigos, asteroides y naves.
Todo un reto que sin duda elevará tu nivel de programación en JavaScript. |