Как связать HTML5-игру JavaScript как родное приложение для Windows?


13

По мере развития веб-браузеров все большую популярность приобретает разработка игр HTML5 с использованием JavaScript, Canvas и webgl. Преимущество веб-игр по сравнению с нативными приложениями заключается в том, что они работают на нескольких платформах, и вам не нужно возиться с библиотеками для конкретных ОС или средами программирования.

Вы уже можете продавать свои веб-игры через интернет-магазин Chrome , но я думаю, что он пока слишком непопулярен, чтобы приносить прибыль разработчикам инди-игр.

Я думаю, что вы можете достичь большей аудитории, продавая свои игры в Mac App Store или Steam, но поэтому вы должны объединить его в качестве отдельного приложения.

Для Mac вы можете легко связать свои HTML5-игры в качестве собственного приложения с помощью компонента Apple WebView. Вот пример того, как это сделать .

Теперь мне интересно: есть ли эквивалентный путь для платформы Windows?


2
"они работают на нескольких платформах" ... медленно, как ад. Невозможно создавать сложные и привлекательные игры с помощью браузеров без использования стороннего программного обеспечения. Полностью раскрученный
daemonfire300

Да, вы можете использовать node-webkit для объединения вашей игры в приложения OSX, Windows и Linux: < github.com/rogerwang/node-webkit > Это очень просто в использовании.
д13

Ответы:


6

Я нацелился на node-webkit для моей игры html5 / js. Большая часть моего кода работает на стороне браузера, поэтому аспекты node.js в основном потому, что он достаточно прост, чтобы запустить небольшой сервер и отправить код html / js во встроенный браузер.

Хорошая демонстрация быстро развивающейся игры - «Ящерица волшебника». Они говорят об их успехе на Reddit , и они, очевидно, используют node-webkit.

Люди, стоящие за "Gamedev Tycoon", выпустили свои API интеграции SteamWorks как открытый исходный код . Это позволяет вам взаимодействовать с внутренностями steam из node-webkit.

Популярная (читай: для новичков) платформа для разработки игр " Construct 2 " позволяет создавать упрощенные игры, используя html5 / canvas за кулисами. Они также используют node-webkit для упаковки игры в качестве исполняемого файла. Мой друг, не являющийся программистом и имеющий опыт работы с цифровыми медиа, довольно быстро понял это. В качестве примера я привел небольшую демонстрацию его первой тестовой игры .

Другой вариант, если вы не хотите использовать html / javascript (но все же хотите использовать браузерную игру), это использовать либо инфраструктуру Unity, либо Unreal Engine . Unreal Engine может не иметь полной поддержки в настоящее время, но, согласно их плану, он становится первоклассной функцией. Было довольно легко интегрировать серверные компоненты с ними, и оба ядра отлично интегрированы с популярными сервисами и могут быть легко взаимодействовать с серверными элементами. Вы можете прочитать больше о том, как они интегрируются в Интернет, в новом посте Mozilla на эту тему .

Все это хорошо работает с itch.io - вот где я надеюсь опубликовать.


1
Быстрый и простой маршрут с помощью node-webkit: github.com/jyapayne/Web2Executable/releases
Jersh

3

Если я не ошибаюсь, в Winforms API в .NET Framework есть компонент веб-браузера, который можно добавлять в приложение, отображать содержимое HTML и изменять с помощью простого интерфейса. Он опирается на уже установленный веб-браузер (обычно IE), поэтому вам нужно убедиться, что у пользователя есть все необходимое для просмотра вашей игры, но кроме этого, я не понимаю, почему он не будет работать.

Это выглядит многообещающе. Надеюсь я помог :)


1

Вы можете использовать Qt с виджетом QtWebkit, который будет работать на всех основных платформах.


1

Titanium Desktop предлагает платформу HTML5 CSS3 Javascript для создания нативных приложений для Windows, единственным недостатком является то, что исходный код приложения остается полностью открытым для любого пользователя для редактирования или просмотра.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.