stringtranslate.com

Phaser (marco de juego)

Phaser es un framework de juegos 2D que se utiliza para crear juegos HTML5 para computadoras de escritorio y dispositivos móviles. [1] Es un software gratuito desarrollado por Photon Storm. [2]

Phaser utiliza un renderizador Canvas y WebGL internamente y puede cambiar automáticamente entre ellos según la compatibilidad del navegador. Esto permite una renderización rápida en computadoras de escritorio y dispositivos móviles. Utiliza la biblioteca Pixi.js para la renderización.

Los juegos se pueden implementar en iOS, Android y aplicaciones de escritorio nativas a través de herramientas de terceros como Apache Cordova y phonegap . [3]

Historia

Richard Davey anunció el primer lanzamiento de Phaser en una publicación de blog en abril de 2013. [4] La versión 1.0 se lanzó en septiembre, incorporando la biblioteca Pixi.js para renderizado. [5]

La última versión oficial de Phaser 2 fue la 2.6.2, pero para permitir mejoras en la versión estable mientras se trabajaba en Phaser 3, se creó un nuevo repositorio: Phaser CE (Community Edition). [6] Por tanto, Phaser CE es la plataforma estable actualmente recomendada para el desarrollo con Phaser.

Phaser 3.0.0 se lanzó el 13 de febrero de 2018 y el desarrollo continúa en GitHub. [7] La ​​mayoría de los elementos y características del marco se han reconstruido desde cero utilizando una estructura totalmente modular y un enfoque orientado a los datos. Phaser 3 incluye un nuevo renderizador WebGL personalizado diseñado para juegos 2D modernos. Desde entonces, se ha completado gran parte de la documentación y los ejemplos para los usuarios, y se han implementado la mayoría de las características.

Actualmente se encuentra en desarrollo Phaser 4, anunciado el 19 de agosto de 2019, que es un intento de reescribir Phaser 3 en TypeScript. No se trata de una reescritura de API y, en cambio, se centrará en trasladar los scripts que se encuentran actualmente en Phaser 3 a TypeScript. [8] El desarrollo de Phaser 4 se ha interrumpido en 2024.

Arquitectura y características

Phaser puede ejecutarse en cualquier navegador web que admita el elemento canvas . Los juegos creados con Phaser se desarrollan en JavaScript o TypeScript . Se requiere un servidor web para cargar recursos como imágenes, sonidos y otros archivos del juego, ya que los navegadores requieren que las páginas web accedan a los archivos solo desde el mismo origen. [9]

Representación

Phaser se puede representar en WebGL o en un elemento Canvas , con una opción para usar WebGL si el navegador lo admite, o si un dispositivo no lo admite, volverá a Canvas.

Física

Phaser viene con tres sistemas físicos: Arcade Physics, Ninja Physics y P2.JS.

Arcade Physics es solo para colisiones AABB de alta velocidad. Ninja Physics permite mosaicos y pendientes complejos, que son adecuados para escenarios de nivel, y P2.JS es un sistema de física de cuerpo completo, que admite restricciones, resortes y polígonos, entre otros.

A partir de Phaser 3.6, existen dos motores de física principales, llamados Arcade y Matter. También existe un motor menos conocido similar a Arcade llamado Impact.

Arcade es probablemente el más utilizado de los tres, ya que es rápido y fácil de usar. Utiliza rectángulos y círculos alineados con el eje (no rotados) para la detección de colisiones, además de todas las funciones básicas del motor de física, como la gravedad, la aceleración y la resistencia. Su desventaja es que sus funciones son limitadas. Los hitboxes complejos pueden ser muy difíciles de crear a partir de las formas admitidas y varios objetos en proximidad cercana pueden causar problemas de estabilidad.

Matter es el motor de física más avanzado, pero su complejidad también aumenta con las funciones adicionales. Matter es capaz de simular una física de cuerpo completo muy realista. Admite una multitud de funciones, como cuerpos rígidos, compuestos y compuestos, colisiones elásticas, apilamiento estable y propiedades físicas como masa y densidad.

Impact tiene muchas similitudes con Arcade, pero aporta algunas ventajas útiles. Por ejemplo, Impact puede tener pendientes en sus mapas de mosaicos, lo que no es posible con los rectángulos alineados con los ejes de Arcade. Sin embargo, la desventaja de esto es que tienes que usar el editor "Weltmeister" del propio desarrollador del motor de Impact para crear mapas de mosaicos.

Animación y audio

Phaser es un potente motor de juego que cuenta con excelentes características de animación y audio, ofreciendo varias herramientas y opciones para lograr una experiencia de juego inmersiva:

Animación: Phaser admite hojas de sprites y atlas de texturas, que incluyen varios fotogramas o animaciones de personajes. Los desarrolladores pueden usar secuencias de fotogramas para crear animaciones. La capacidad de secuencias de animación de Phaser permite a los desarrolladores crear sin esfuerzo secuencias de animación para sprites, incluido el control sobre el bucle, la velocidad y la velocidad de fotogramas. Desde movimientos de personajes simples hasta animaciones de efectos especiales complejos. Además, Phaser ofrece un motor de interpolación integrado para crear animaciones de transición suaves. Esto es particularmente útil para efectos como desvanecimiento, escalado, rotación y también se puede utilizar para otras animaciones de efectos especiales complejos.

Audio: Phaser permite a los desarrolladores gestionar y reproducir audio web y audio HTML5, proporcionando un amplio conjunto de opciones de control de efectos de audio, que incluyen volumen, silencio, repetición, fundido de entrada y salida y posicionamiento del sonido. Estos atributos se pueden ajustar según sea necesario. Además, Phaser admite la precarga de archivos de audio, lo que garantiza que el sonido se reproduzca sin demoras, listo para su reproducción inmediata y brindando una mejor experiencia de juego.

Comparación con otros motores de juegos ligeros

Phaser es un motor de código abierto que se centra en el desarrollo de juegos en 2D y es muy apreciado por muchos desarrolladores de todo el mundo. En comparación con otros motores de juegos populares, Phaser tiene sus propias ventajas y limitaciones.

Phaser vs. Cocos2d-x: Cocos2d-x es un marco de desarrollo de juegos 2D/3D multiplataforma. En comparación con Phaser, es compatible con más plataformas nativas, como iOS y Android. Sin embargo, Phaser se basa en HTML5, lo que facilita la integración con tecnologías web modernas y es adecuado para la iteración y la implementación rápidas de plataformas web.

Phaser vs. Unity 2D: Unity es un motor de desarrollo de juegos muy conocido en la industria, que admite el desarrollo de juegos tanto en 2D como en 3D. En comparación con Phaser, Unity ofrece herramientas de edición más potentes y un soporte de plataformas más amplio. Pero Phaser es relativamente ligero y la barrera de entrada puede ser menor para los principiantes, especialmente aquellos que solo quieren centrarse en el desarrollo de juegos web.

Phaser vs. Three.js: Three.js es una interfaz de programación de aplicaciones y Javascript compatible con varios navegadores que se utiliza para crear y mostrar gráficos de computadora animados en 3D en un navegador web mediante WebGL. Es más general que Phaser. En cambio, Phaser se centra más en el desarrollo de juegos del lado del navegador.

Al elegir un motor de juegos, los desarrolladores deben tener en cuenta factores como la plataforma de destino, el tamaño del proyecto, la curva de aprendizaje y el apoyo de la comunidad. Phaser es apreciado por su simplicidad y facilidad de uso, especialmente para aquellos que quieren comenzar rápidamente con el desarrollo de juegos web.

Véase también

Referencias

  1. ^ "Phaser - JavaScript".
  2. ^ "Cómo aprender el motor de juego HTML5 Phaser".
  3. ^ "Phaser - Framework de juegos HTML5". GitHub . 2 de noviembre de 2021.
  4. ^ "Anunciamos Phaser (Flixel HTML5) y nuestra sesión sobre Adobe Max". 12 de abril de 2013.
  5. ^ "Phaser 1.0 y el camino que recorrimos para llegar hasta allí". 16 de septiembre de 2013.
  6. ^ "Phaser - Descargar - Phaser CE - Community Edition".
  7. ^ "Phaser: el marco de juego HTML5 rápido, divertido y gratuito". phaser.io . Consultado el 15 de mayo de 2018 .
  8. ^ "Registro de desarrollo de Phaser 3 n.° 148: anuncio de Phaser 4 y actualización sobre los lanzamientos de Phaser 3.18 y 3.19. - Phaser3 - Phaser". phaser.io . Consultado el 26 de abril de 2020 .
  9. ^ "Política del mismo origen - Seguridad web MDN". mozilla.org . Consultado el 30 de septiembre de 2021 .

Enlaces externos