PYGJS (PyGame en Browser/NodeWebkit)

Esta página es una sub-página de una lista más grande de cosas, proyectos de programación.

Esta página ha sido establecida JUSTO y por lo tanto está en la fase preliminar de borrador.

Para una introducción a la esencia general de este proyecto, por favor vea este post.

Aquí está la información del readme de asherwunk / pygjs:

pygjs

PyGame en NodeWebkit / Navegador

Este es un borrador de algo que he estado trabajando durante un tiempo, así que úselo sabiamente (ALFA)

Básicamente, siempre me ha gustado la forma en la biblioteca pygame establecido, pero sabía que si programé un juego en pygame, tendría que cludgingly puerto a cualquier sistema operativo que desea que el juego para ejecutar, por no hablar de paquete hasta el python en un ejecutable.

Así que pensé para mí mismo, después de descubrir la biblioteca de GameJS hermosa http://gamejs.org/ y la biblioteca encantadora de Brython http://brython.info/ qué si podría funcionar Pygame más o menos en una instalación de nodewebkit (e incluso el ¿navegador?)

PYGJS nació! Esencialmente es una estructura como esta:

Mi implementación de GameJS aquí es MODIFICADA ampliamente, puedes encontrar más información en asherwunk / gamejs También usa más bibliotecas incluyendo howler.js, gamepad.js y opentype.js (ver asherwunk / gamejs)

Yo busco gamebridge.js y lo salgo a game.js así:

browserify ./gamebridge.js -o game.js

A continuación, incluyo game.js como un script en mi archivo HTML

Esto crea una variable gamejs en mi ventana, a la que accedo a través de Brython

Brython importa Pygame, como se define aquí, que es un código de python que envuelve la funcionalidad de GameJS en cosas más Pygame reconocible

También puede importar pygjs que actualmente proporciona python wrappers al resto de la librería GameJS

A qué atenerse

Esto NO es un emulador. Para que tus juegos de pygame se ejecuten en este entorno tendrás que reprogramar partes de él. Por ejemplo, para las imágenes y fuentes que tendrá que precargar estos antes de usarlos. También tendrá que modificar su bucle de juego probablemente (como un tiempo para siempre el ciclo bloquearía todo).

Si estás dispuesto a hacer algunas modificaciones, puedes programar en Python usando pygame en el navegador (o nodewebkit)

¿POR QUÉ?

Usando el navegador como mi intérprete de python, haciendo esencialmente JavaScript mi sistema operativo, puedo hacer cualquier cosa que un navegador pueda hacer. Esto incluye el uso de otras bibliotecas de JavaScript.

Las aplicaciones NodeWebkit también son compatibles entre plataformas, por lo que puedo empaquetar el juego para que se ejecute en el navegador (potencialmente), en un teléfono y en el escritorio.

Básicamente, tengo todos los beneficios de pygame con todos los beneficios del navegador, ¡yay!

Más sobre mí

Tengo un blog personal dedicado a todo tipo de cosas en http://wunk.originalpursuitssoc.com/ Si quieres saber más sobre mí, ese es el lugar para hacerlo.

Si usted aprecia mi programación por favor ayude a apoyarme a través de mi Patreon.

Si un compromiso mensual es demasiado, podría considerar comprarme una taza de café.

photo credit: sonic2000gr Διασκεδάζοντας με το Pygame! via photopin (license)