Браузерные Игры для Android
Давно хотел сделать хоть какую-нибудь игрушку для мобильника. Разработка игр – это одно из моих хобби. Времени я уделяю для этого крайне мало, но делаю это с удовольствием.
Раньше разрабатывал небольшие игрушки на PC (так, друзьям и коллегам поиграть), браузерные игры и игры для социальных сетей. Ничего особо выдающегося в этом направлении я не сделал, но неплохо провел время.
Ах да, еще работал в парочке фирм-разработчиков и издателях компьютерных игр программистом, но быстро понял, что увлечение – это одно дело, а работа в крупной фирме в области геймдева – совсем другое.
Никогда не делал игр для мобильных устройств и вот решил изучить вопрос, попробовать и разработку, и публикацию, и вообще узнать как там все.
Выбор технологии
Два раза устанавливал Unity, сделал тестовый проект и не знаю – что-то не лежит душа к этой технологии, все мне неудобно и навыворот сделано.Пробовал sdl2 и cocos2d – намного больше понравились эти технологии, но обязательно натыкался на ограничения возможностей движка в некоторых аспектах, без которых можно было и обойтись, но очень хотелось больше пространства для маневров.
Пробовал haxe – очень интересная штука, но собирать приложение долго, часто глючит сборка через Android SDK/NDK (у меня несколько сред разработки по работе со своими хранилищами Android SDK/NDK, возможно они конфликтуют с haxe), да и производительность не сильно лучше Starling для AIR.
Ковырялся я долго в разных движках и в какой-то момент решил просто выпустить ради самого процесса игрушку. Поэтому я обратился к старому другу – AS3 с технологией AIR. Как-то делал небольшие радиоуправляемые игрушки и вместо пульта использовал телефон, на котором были разработаны простенькие интерфейсы джойстика управления по WI-FI. Как раз для этого я использовал AIR, ведь раньше я делал игрушки на Flash, и создание приложения для мобильника на AIR оказалось крайне быстрым и простым.
Stage3D
Векторная анимация никогда не отличалась хорошей производительностью, но небольшое количество анимаций работает отлично. Серьёзной игрушки на этом не сделаешь, да и давно хотел освоить работу с видеокартой через Stage3D. Пробовал еще bitmap blitting как ведет себя на мобильнике – очень не плохо, но так-как это все для личного удовольствия, я решил освоить таки Stage3D.Сначала я взялся за Starling и Genome2D. Starling оказался очень удобным, но не оправдал моих ожиданий в производительности, если использовать анимации с различными фильтрами отображения, то лучше использовать обычный DisplayList и MovieClip. С Genome2D трудно работать и искать информацию, да и не на много производительнее. Посмотрев исходники, мне стало понятно, что эти движки – очень жесткая реализация возможностей Stage3D. Решил посмотреть на сам Stage3D.