Aprender desarrollo de videojuegos para móviles y web con Phaser.js: Con 100 ejercicios prácticos
Por Pablo Monteserín
()
Información de este libro electrónico
Este manual de programación con Phaser se apoya en Javascript para explicarle, paso a paso, el desarrollo de cada uno de los 8 juegos que presenta. Los contenidos están ordenados de manera que, al llegar a los juegos más complejos, ya dominará la programación de videojuegos.
· Juegos básicos: Elige tu propia aventura y Acierta la imagen
· Juegos clásicos: Fall Down, Galería de tiro y Flappy Bird
· Juego deportivo
· Juego de carreras
· Juego de plataformas
Además, en la parte inferior de la primera página del libro encontrará el código de acceso que le permitirá acceder de forma gratuita al código fuente de cada juego en www.marcombo.info. De este modo, tendrá a su alcance todo lo necesario para materializar los juegos sin gran esfuerzo.
Tras hacer los juegos propuestos y entender su código, podrá crear sus propios proyectos y publicarlos para que nadie se quede sin jugar.
¡Crear un juego nunca había sido tan sencillo!
Relacionado con Aprender desarrollo de videojuegos para móviles y web con Phaser.js
Libros electrónicos relacionados
Aprende a Programar Swift - Tercera Edición Calificación: 0 de 5 estrellas0 calificacionesUnity 3D Calificación: 4 de 5 estrellas4/5El gran libro de Android: 7ª Edición Calificación: 0 de 5 estrellas0 calificacionesEl gran libro de Android 8ªEd. Calificación: 5 de 5 estrellas5/5UML. Arquitectura de aplicaciones en Java, C++ y Python. 2ª Edición Calificación: 0 de 5 estrellas0 calificacionesAprende a Desarrollar Videojuegos Calificación: 3 de 5 estrellas3/5Aprende sobre la Ingeniería de Software Calificación: 0 de 5 estrellas0 calificacionesProcessing: Desarrollo de interfaces de usuario, aplicaciones de visión artificial e IoT para Arduino y ESP8266 Calificación: 5 de 5 estrellas5/5Curso de Programación de Apps. Android y iPhone Calificación: 5 de 5 estrellas5/5Aprende a Modelar Aplicaciones con UML - Tercera Edición Calificación: 2 de 5 estrellas2/5Curso de Programación con Java Calificación: 4 de 5 estrellas4/5TypeScript, Curso Práctico Calificación: 0 de 5 estrellas0 calificacionesJava Curso Práctico Calificación: 0 de 5 estrellas0 calificacionesHTML5 Avanzado Calificación: 0 de 5 estrellas0 calificacionesDiseño de arquitecturas .NET orientadas a microservicios Calificación: 3 de 5 estrellas3/5Desarrollo de Interfaces.: Gráficos y diseño web Calificación: 4 de 5 estrellas4/5Kotlin y Jetpack Compose. Desarrollo de aplicaciones Android Calificación: 0 de 5 estrellas0 calificacionesEstructuras de datos orientadas a objetos Calificación: 0 de 5 estrellas0 calificacionesDesarrollo de Videojuegos. Desde el diseño a la comercialización Calificación: 0 de 5 estrellas0 calificacionesDiseño de Software Calificación: 0 de 5 estrellas0 calificacionesPAC-MAN ZX SPECTRUM Calificación: 0 de 5 estrellas0 calificacionesAprende a programar en C# Calificación: 5 de 5 estrellas5/5Legacy Code Calificación: 4 de 5 estrellas4/5El gran libro de 3ds Max: bases, modelado, texturizado y render Calificación: 0 de 5 estrellas0 calificacionesUnity 2017.X Curso Práctico Calificación: 0 de 5 estrellas0 calificacionesAprende a Programar Ajax y jQuery Calificación: 1 de 5 estrellas1/5Aprender Javascript Avanzado con 100 ejercicios prácticos Calificación: 5 de 5 estrellas5/5Cómo construir Microservicios : Los diez principales trucos para modelar, integrar y desplegar microservicios Calificación: 4 de 5 estrellas4/5La Guía Básica de Javascript Calificación: 5 de 5 estrellas5/5
Internet y web para usted
Cómo Eliminar Distracciones: Dispara tu Atención y Concentración Mental con Sencillos Métodos que Puedes Empezar a Usar Hoy Mismo Calificación: 5 de 5 estrellas5/5Habilidades de Conversación para Introvertidos: Descubre cómo interactuar socialmente cómo un extrovertido natural y a ser la persona más interesante del lugar Calificación: 0 de 5 estrellas0 calificacionesPodcast: Guía práctica para crear programas radiofónicos y audiolibros Calificación: 0 de 5 estrellas0 calificacionesEl algoritmo del amor: Un viaje a las entrañas de Tinder Calificación: 4 de 5 estrellas4/5Cómo ser una Persona más Sociable: Aprende a hablar con cualquiera sin temor e incrementa por completo tu inteligencia social Calificación: 5 de 5 estrellas5/5SEO Copywriting. Mejora tus textos y tu posicionamiento en buscadores Calificación: 4 de 5 estrellas4/5Marketing en Redes Sociales: Una Guía Completa Para Hacer Crecer su Marca en Redes Sociales Calificación: 5 de 5 estrellas5/5El gran libro de HTML5, CSS3 y Javascript Calificación: 3 de 5 estrellas3/5#Enredados: Las redes sociales más allá de los memes Calificación: 3 de 5 estrellas3/5GuíaBurros: Crear una Web en WordPress: Todo lo que debes saber para crear tu propia Web en WordPress Calificación: 5 de 5 estrellas5/5Marketing de Experiencias Calificación: 0 de 5 estrellas0 calificacionesInternet no es lo que pensamos: Una historia, una filosofía, una advertencia Calificación: 0 de 5 estrellas0 calificacionesConquista de las Redes Sociales: 201 Consejos para Marketeros y Emprendedores Digitales Calificación: 5 de 5 estrellas5/5Los Daños y Consecuencias de las Redes Sociales: Descubre los Efectos Destructivos de las Redes Sociales y lo que Puedes Hacer al Respecto Calificación: 0 de 5 estrellas0 calificaciones7 Pasos Para Ser Un Pentester: Cómo hackear, #0 Calificación: 5 de 5 estrellas5/5GuíaBurros Youtube: Todo lo que necesitas saber sobre esta red social Calificación: 4 de 5 estrellas4/5Seguridad en Bases de Datos y Aplicaciones Web Calificación: 5 de 5 estrellas5/5Hiperaceleración: La revolución digital en la época del coronavirus Calificación: 5 de 5 estrellas5/5GuíaBurros Linkedin: Todo lo que necesitas saber para sacarle partido a esta red social profesional Calificación: 0 de 5 estrellas0 calificacionesHTML5, CSS3 y JQuery: Gráficos y diseño web Calificación: 5 de 5 estrellas5/5CÓMO MONETIZAR LAS REDES SOCIALES Calificación: 4 de 5 estrellas4/5Tú no eres tu selfi: 9 secretos digitales que todo el mundo vive y nadie cuenta Calificación: 4 de 5 estrellas4/5Marketing de Influencers Calificación: 5 de 5 estrellas5/5La comunicación: De los orígenes a internet Calificación: 0 de 5 estrellas0 calificacionesHacking Ético 101 - Cómo hackear profesionalmente en 21 días o menos! 2da Edición: Cómo hackear, #1 Calificación: 4 de 5 estrellas4/5Alfabetización digital e iniciación a la informática Calificación: 0 de 5 estrellas0 calificacionesLa Guía Básica de JavaScript Calificación: 4 de 5 estrellas4/5
Comentarios para Aprender desarrollo de videojuegos para móviles y web con Phaser.js
0 clasificaciones0 comentarios
Vista previa del libro
Aprender desarrollo de videojuegos para móviles y web con Phaser.js - Pablo Monteserín
Introducción al desarrollo de videojuegos con Phaser.js
¿Qué va a aprender con este libro?
Con este libro adquirirá las destrezas necesarias para poder programar videojuegos utilizando Javascript.
IllustrationEl creador de Phaser, Richard Davey, ha colaborado conmigo en la realización de este libro, resolviendo algunas dudas y aportando la mejor forma de hacer las cosas.
En ocasiones tengo ideas e inquietudes que quiero materializar y compartir. Al término de este libro, usted también debería poder programar sus propias ideas por medio de la creación de videojuegos. En este sentido, estoy muy agradecido a la editorial Marcombo por haberme brindado la oportunidad de compartir este conocimiento con usted por medio de este libro.
Una vez haya descargado los recursos gráficos necesarios desde www.marcombo.info y haya adquirido ciertas destrezas, podrá programar un videojuego de manera muy rápida. Lo bonito de esto es que puede utilizar estos conocimientos para transmitir ideas: imagine un videojuego de plataformas que sea su curriculum, donde va superando las diferentes fases correspondientes a los trabajos que ha tenido en su vida, o una aventura gráfica con la historia de cómo conoció a su pareja, o un juego educativo para crear buenos hábitos en los niños, o para aprender a multiplicar de una forma más divertida...
IllustrationPara programar nuestros videojuegos utilizaremos Phaser, que es una librería de Javascript orientada al desarrollo de videojuegos 2D con una gran comunidad que le ayudará a resolver sus dudas y con la que usted también puede colaborar.
Una librería es un conjunto de funcionalidades que han sido desarrolladas para ser reutilizadas. Habitualmente, cuando programa un videojuego, tiene que llevar a cabo muchas tareas repetitivas. Phaser aglutina estas operaciones para que no tenga que programarlas, solo usarlas.
Aprender desarrollo de videojuegos para móviles y web con Phaser.js con 100 ejercicios prácticos
001
El código fuente de los videojuegos de este libro utiliza la tercera y última versión de Phaser.
Los videojuegos que haremos pueden ser fácilmente integrados en una página web o compilados para ser subidos a una tienda de aplicaciones móviles (Google Play, Apple Store, etc). De hecho, los programas que desarrollará en este libro están pensados para ser ejecutados en un dispositivo móvil.
Tras esta declaración de intenciones, viene la hora de ponerse manos a la obra. Este libro está lleno de retos y mi objetivo desde esta primera página hasta la última es suavizar y facilitarte el camino que implica aprender a programar videojuegos con Phaser.
Muchos de los ejercicios que propongo se repiten en el libro de diferentes formas. En el Flappy Bird, el protagonista cae por gravedad. En el juego de plataformas, también. La idea es que una vez que haya programado una mecánica una vez, preste atención para poder utilizar esa mecánica en otro contexto.
IMPORTANTE
Puede instalar en su dispositivo Android una muestra de los juegos que podrá hacer al término de este libro escaneando el siguiente código QR o yendo a:
https://play.google.com/store/apps/details?id=com.pablomonteserin.librophaser
IllustrationIllustrationEjecutar en el servidor
El código fuente de los juegos que haremos en Phaser está escrito en ficheros con código HTML y Javascript. Los documentos con extensión HTML suelen utilizarse para el desarrollo de páginas web. En nuestro caso, contendrá el código fuente de nuestro videojuego. Para lanzar un fichero HTML en nuestro navegador, en general, basta con hacer doble click sobre él; de esta forma, se abrirá con el navegador que el sistema operativo tenga asociado por defecto.
Sin embargo, por motivos de seguridad, los navegadores web (Chrome, Firefox, etc) bloquean ciertas funcionalidades cuando no ejecutamos nuestra aplicación a través de un servidor. Por ejemplo, bloquean peticiones Ajax, que es un tipo de petición que Phaser usa para cargar los recursos gráficos, sonidos, etc.
Por ello, para ejecutar videojuegos hechos con Phaser no basta con hacer doble click. Para ejecutar nuestros juegos necesitamos instalar un software que creará un servidor web local en nuestro ordenador. A través del servidor web local (en adelante localhost) debemos ejecutar nuestros videojuegos.
Por tanto, para programar con Phaser vamos a instalar un servidor local. Existen varias aplicaciones que nos permiten instalar un servidor local cómodamente. Yo le propongo descargar e instalar XAMPP. Si ya conoce o quiere probar otras opciones, le dejo los enlaces de otros servidores locales:
•WAMP: http://www.wampserver.com (para Windows)
•EASY PHP: http://www.easyphp.org (para Windows)
•MAMP: https://www.mamp.info (para Mac)
IllustrationEn nuestro caso, instalaremos XAMPP. Pasos en la instalación de XAMPP:
1. Iremos a su página web: https://www.apachefriends.org
2. Pulsamos sobre la versión de XAMPP correspondiente a nuestro sistema operativo para descargar el instalador.
3. Ejecutamos el instalador. La instalación muy sencilla y bastará con seguir las instrucciones que nos dan e ir pulsando el botón de siguiente cuando sea necesario. Cuando lleguemos al final, tendremos un servidor local instalado en nuestro equipo.
4. Arrancamos el servidor. Si es usuario de Windows, podrá acceder al panel de administración de nuestro servidor ejecutando la aplicación xampp-control que está en la carpeta xampp .
Aprender desarrollo de videojuegos para móviles y web con Phaser.js con 100 ejercicios prácticos
002
Tras ejecutar el programa xampp-control, debemos pulsar sobre el botón de Start que corresponde al módulo de Apache. Fíjese en la captura. Está señalado con un cículo naranja alrededor del botón de Start. En la siguiente imagen ya se ve el servicio arrancado, resaltando en verde el módulo de Apache.
IllustrationPasos a seguir en la ejecución de nuestro código Phaser:
Tras haber instalado y arrancado el servidor...
Illustration1. Accedemos mediante un navegador a
http://localhost/
y se mostrará la página de bienvenida de Apache. Sin embargo, en el siguiente paso vamos a eliminarla.
2. Borramos el contenido de la carpeta:
c:/xampp/htdocs
Esta es la carpeta de su ordenador que se corresponde con la dirección:
http://localhost/
Verá que en esa carpeta hay más cosas. Le recomiendo eliminar todo su contenido. De esta forma le será más cómodo utilizar el navegador web para acceder a los juegos, ya que cuando navegue por esta carpeta verá el contenido de la misma, en lugar de la página de bienvenida de XAMPP.
Illustration3. Dentro de la carpeta htdocs vamos a crear la carpeta elige-tu-propia-aventura , en la que dejaremos el código fuente de nuestro juego. Para acceder a ella desde el navegador, usaremos la siguiente dirección:
http://localhost/elige-tu-propia-aventura/
IllustrationDescargar y cargar Phaser
Para poder usar Phaser debemos seguir los siguientes pasos:
1. Descargar un fichero Javascript con el código fuente de Phaser. Para descargar este fichero, debemos ir a la web de Phaser:
https://phaser.io/
2. Una vez aquí, pulsaremos en el enlace de descarga desde Github.
3. Llegaremos a una segunda pantalla donde volveremos a pulsar sobre el enlace de descarga llamado min.js .
Con esto habremos descargado la librería de Phaser a nuestro ordenador. Debemos mover este fichero a la carpeta:
c:/xampp/htdocs/elige-tu-propia-aventura
Aquí es donde vamos a trabajar.
IllustrationIMPORTANTE
Si es usuario de Windows, por defecto las extensiones de archivo no se visualizan. Así, para un fichero llamado index.html usted estará viendo en el explorador de ficheros solo su nombre sin extensión (index). Es mejor si puede ver su nombre completo, con la extensión.
Para visualizar las extensiones de ficheros en Windows 10:
Menú vista -> Panel mostrar u ocultar -> Extensiones de nombre de archivo
IllustrationAprender desarrollo de videojuegos para móviles y web con Phaser.js con 100 ejercicios prácticos
003
IllustrationIllustrationEditores de código
Como ya comenté en la introducción, este libro está orientado a alguien que ya tiene conocimientos de programación. Siendo así, ya tendrá un editor de código preferido y muy probablemente ese será el que deba usar para codificar los ejemplos.
No obstante, le hago unos comentarios sobre algunos editores de código interesantes:
Sublime text
Este es el editor de código que yo uso. No es de código abierto, aunque lo puede usar gratuitamente (no obstante, cada veinte o treinta veces que salves tu código, aparecerá un pop up sugiriéndote que lo compres). Aunque todos los editores que comento son muy rápidos, este es el más rápido.
IllustrationPuede descargarlo en: https://www.sublimetext.com/3
Aprender desarrollo de videojuegos para móviles y web con Phaser.js con 100 ejercicios prácticos
004
Visual Studio Code
Está desarrollado por Microsoft y es de código abierto. Pienso que es más completo que el sublime text, aunque algo más lento.
Puede descargarlo en https://code.visualstudio.com
IllustrationAtom
Desarrollado por la gente de github y de código abierto. Es el que menos me convence de los tres, aunque confieso que no le he dado muchas oportunidades. Para algunos de mis alumnos esta es la primera opción.
Puede descargarlo en: https://atom.io/
Estructura básica del videojuego: El HTML
Todos los juegos que vamos a realizar en Phaser parten de un una estructura, unas primeras líneas de código idénticas.
Vamos a verlo por partes. Primero veremos el fichero index.html en el que insertaremos nuestro código Javascript.
Cuando accedemos con el navegador a una carpeta en la que hay un fichero index.html, el navegador ejecuta directamente ese fichero.
A partir de entonces, aunque solo le mostraré las capturas del código Javascript, usted debe tener en cuenta que dicho código estará insertado dentro de un documento HTML como el que puede observar en la página de