¿Cómo agrupar un juego JavaScript HTML5 como aplicación nativa de Windows?

13

A medida que evolucionan los navegadores web, el desarrollo de juegos HTML5 con JavaScript, Canvas, webgl se está volviendo cada vez más popular. La ventaja de los juegos basados ​​en la web en comparación con las aplicaciones nativas es que se ejecutan en múltiples plataformas, y no tiene que jugar con bibliotecas o entornos de programación específicos del sistema operativo.

Ya puedes vender tus juegos web a través de la tienda web de Chrome , pero creo que todavía es demasiado impopular por ser rentable para los desarrolladores de juegos independientes.

Creo que puede llegar a una gran cantidad de personas vendiendo sus juegos en la tienda de aplicaciones de Mac o Steam, pero por lo tanto, debe agruparlo como una aplicación independiente.

Para mac, puede agrupar fácilmente sus juegos HTML5 como aplicación nativa utilizando el componente WebView de Apple. Aquí hay un ejemplo de cómo hacer eso .

Ahora me pregunto: ¿hay una forma equivalente para la plataforma Windows?

seb
fuente
2
"corren en múltiples plataformas" ... lento como el infierno. No hay forma de crear juegos complejos y atractivos con navegadores sin involucrar software basado en un sistema de terceros. Totalmente publicitado
daemonfire300
Sí, puede usar node-webkit para agrupar su juego como aplicaciones OSX, Windows y Linux: < github.com/rogerwang/node-webkit > Es muy fácil de usar.
d13

Respuestas:

6

He estado apuntando a node-webkit para mi juego html5 / js. La mayor parte de mi código se ejecuta en el lado del navegador, por lo que los aspectos de node.js se deben principalmente a que es lo suficientemente simple como para que ejecute un servidor pequeño y envíe el código html / js al navegador incorporado.

Una buena demostración de un juego de ritmo rápido es "A Wizard's Lizard". Hablan sobre su éxito en reddit , y aparentemente usan node-webkit.

La gente detrás de "Gamedev Tycoon" lanzó su API de integración de steamworks como código abierto . Te permite interactuar con las entrañas de steam desde node-webkit.

Una plataforma de desarrollo de juegos popular (léase: amigable para los novatos) " Construct 2 " te permite crear juegos simplistas usando html5 / canvas detrás de escena. También usan node-webkit para empaquetar el juego como un ejecutable. Mi amigo no programador con experiencia en medios digitales lo recogió con bastante rapidez. Organicé una pequeña demostración de su primer juego de prueba como ejemplo.

Otra opción, si no quiere usar html / javascript (pero aún quiere un juego basado en navegador) es usar el marco de Unity o el Unreal Engine . El Unreal Engine puede no tener soporte completo actualmente, pero de acuerdo con su hoja de ruta se está convirtiendo en una característica de primera clase. Fue bastante fácil integrar cosas del servidor con ellos y los motores tienen una gran integración con los servicios populares y pueden interactuar con elementos del lado del servidor con bastante facilidad. Puede leer más sobre cómo se están integrando con la web en la nueva publicación de blog de mozilla sobre el tema .

Todo esto funciona bien con itch.io , que es donde espero publicar.

Ape-inago
fuente
1
Una ruta rápida y fácil con node-webkit: github.com/jyapayne/Web2Executable/releases
Jersh
3

Si no me equivoco, la API de Winforms en .NET Framework tiene un componente de navegador web que puede agregar a una aplicación, mostrar contenido HTML y modificar a través de una interfaz simple. Se basa en un navegador web ya instalado (generalmente IE), por lo que tendría que verificar que el usuario tenga todo lo necesario para ver su juego, pero aparte de eso, no veo por qué no funcionaría.

Esto parece prometedor. Espero haber ayudado :)

Miguel
fuente
1

Puede usar Qt con el widget QtWebkit, que funcionará en todas las plataformas principales.

mpnk121
fuente
1

Titanium Desktop ofrece una plataforma HTML5 CSS3 Javascript para crear aplicaciones nativas para Windows, la única desventaja es que el código fuente de la aplicación permanece totalmente abierto para que cualquiera pueda editarlo o verlo.

Victor Debone
fuente