понедельник, 11 февраля 2013 г.

Расширения Adobe AIR и инструмент для их компиляции (ANEBuilder)

ANE-расширения для Adobe AIR развиваются быстрее самого Adobe AIR, и это дает новые причины оптимистично оценивать будущее лучшей технологии создания кросс-платформенных приложений (несмотря на двусмысленные инсайдерские сигналы о судьбе AIR в видении Adobe). Эта технология неуязвима уже по причине своей важности для сообщества тысяч разработчиков. Набранные Adobe AIR вес и скорость делают его устойчивым в движении, подобно тому, как устойчив и не может быть резко остановлен тяжелый, набравший скорость локомотив. Особенно, если его не останавливать.  На этом лирическая часть поста закончена, переходим к содержательной.  Растут репозитории расширений Adobe AIR под разные платформы. Ниже -- список главных из них: 

Коллекции AIR Native Extensions

ANE Builder: инструмент для создания AIR Native Extensions

Danel Kirch создал ANEBuilder, и он сразу всем понравился. ANEBuilder -- это приложение Adobe AIR, позволяющее компилировать ANE-файлы, не прибегая к командной строке (пока по умолчанию работает на Mac-ах, но можно настроить для работы на Windows)Вот видео про то, как это работает:

Ссылки по ANEBuilder:


[...]
Читать дальше: Расширения Adobe AIR и инструмент для их компиляции

среда, 6 февраля 2013 г.

Adobe AIR -- лучший для разработки кросс-платформенных приложений

Пришло время сказать еще раз: AIR созрел и стал лучшим кросс-платформенным средством разработки.
В то время как Adobe нацеливает Flash Payer исключительно на игры (плюс немного видео), разработчики отмечают, насколько мощным для разработки приложений стал Adobe AIR.
В ноябре 2012 года Joseph Labrecque акцентировал, что ставший приложением года Photoshop Touch сделан на Adobe AIR:
Photoshop Touch - Adobe AIR
А 31 января 2013 Zwetan Kjukov из Лондона в своем эссе "Story of the day: AIR is freaking good" восторгается успехами с Adobe AIR, в частности, о том, как мало времени занимает выпуск версии приложения под новую платформу.

Слухи о смерти Flash оказались несколько преувеличенными

Christian Heilmann пишет замечательную статью в поддержку Flash. Выходит iPad-приложение Flash Keys, расширяющее Flash CS5 и выше, перенося часть интерфейса на планшет. В блоге JetBrains сообщают, что растет количество Flash-проектов, создаваемых в IntelliJ IDEA. Снова разработчики начали обсуждать возможность выхода Flash Player в open source. Вышел ASV 2013/02.05!

Flash-сообщество исправляет ошибки Adobe в оценке Adobe AIR

Недовольство неуклюжим поведением Adobe с новой силой взорвалось в обсуждении недавно обновленных планов по развитию Flash у Джозефа, упомянутого выше. Много ругаются, виня Адоби в нерасторопности и неумении увидеть силу собственной платформы. В привязаности к Flash Player в десктопном браузере. В отсутствии поддержки Windows 8, Windows Phone и планшетов на Win8 -- которая, как написал тамже в комментах Ли Бримелоу, таки отсутствует.
Читать дальше: Adobe AIR -- лучший для разработки кросс-платформенных приложений

вторник, 11 декабря 2012 г.

Flash GAMM Kyiv 2012 – Официальный отчет

“Как же круто на Flash GAMM-e!” – эта фраза преследовала участников все мероприятие и четко отражала его атмосферу.
Конференцию посетило более 800 человек, что является нашим новым рекордом.
Программа конференция была замечательной, а на многих докладах был настоящий аншлаг.
Хотелось бы выделить выступления Rovio, Adobe, AlternativaPlatform, Away3D, Spil Games, ToonBox и конечно же Гейм-линч, который был веселым и интересным.
Слайды и видео докладов в скором времени появятся у нас на сайте.
Подписывайтесь на наш канал youtube, twitter, facebook, vk, чтобы не пропустить обновления!
На “Стене вакансий” красовалось более 120 вакансий, а качество игр на Speed Game Dating значительно улучшилось.
На церемонии награждения были вручены грамоты и ценные призы всем победителям Конкурса Игр Flash GAMM, на который было прислано 95 работ.
Мы еще раз поздравляем победителей:

“Лучшая игра (категория компания)”
Vizor Interactive
Игра: Клондайк

“Лучшая игра (категория студия)”
NSBrotherhood
Игра: Lazerman

“Лучшая игра (категория инди)”
Alexey Abramenko
Игра: Intrusion 2

“Лучшая социальная игра”
Rocket Jump
Игра: Осада!


“Лучшая мобильная игра”
Yan Paltin and Iris Weissman
Игра: Ninja Chicken Ooga Booga

“Игра прорыв!”
spyker and Ahura
Игра: Dino Trek

“Лучшая будущая мобильная игра по версии G5”
Room 8
Игра: Cyto

“Лучший геймплей”
Rocket Jump
Игра: Осада!

“Лучшая игра для детей”
Vadim Pecherskiy
Игра: 3 Pandas

“Самый хулиганский разработчик”
playspal.com
Игра: Lost probe

“Самая креативная игра”
FlashRush Games
Игра: Transmorpher

“Приз зрительских симпатий”
Антон Карлов и Александр Ахура
Игра: Zombotron 2

“Будущий хит”
Mandragora
Игра: Knitted deer

“Женский выбор”
HeroCraft
Игра: Мяч и Магия: Волшебный Арканоид

“Самая стойкая игра”
FlashRush Games
Игра: Transmorpher

“Игра с лучшим текстом”
Artibus
Игра: Angry Heroes

“Лучшая графика”
Pegas Games
Игра: Pheus and Mor

“Самая многообещающая игра для GameCastContest 2012”
Alexander Sinelnikov
Игра: Jelly Cannon
Организаторы еще раз благодарят всех спонсоров, докладчиков и участников за то что из года в год поддерживаете нашу конференцию!
Мы растем и развиваемся благодаря только вам!
Спасибо вам большое!
Уезжайте от нас еще!
Всегда ваша,
Flash GAMM Team
Читать дальше: Flash GAMM Kyiv 2012 – Официальный отчет:

воскресенье, 7 октября 2012 г.

Инструкция начинающего разработчика игр

Голая бабаВ данной инструкции я попытался осветить основные моменты разработки игр. Инструкция будет полезна для людей, собирающихся заняться разработкой игр в роле лидера (главного разработчика и организатора).

Хочу отметить, что игры бывают разные – большие и маленькие, сложные и лёгкие, и поэтому для каждой игры эта инструкция верна в какой-то своей определённой степени. Охватить всё не удалось, но передать общие моменты, думаю, получилось [...]

Читать дальше: Инструкция начинающего разработчика игр

четверг, 31 мая 2012 г.

Мантры о системах частиц - Particle systems in Flash

Мгновение, застывшее во времени!

Ниже вы можете ознакомиться с несколькими статьями о создании системы частиц для Flash. Эти статьи я уже выкладывал в сеть и довольно давно, потом они пропали и вот, я решил сдуть с них пыль и вернуть на место. 

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

Приятного ознакомления с материалом. :)

PS: Извиняюсь, за мудацкий способ встраивания флешек в текст этой статьи. Но бесплатный sites.google, где я храню SWF файлы, напрочь отказывается предоставлять к флешкам доступ без этой дурацкой процедуры с кликом по ссылке.

PPS: Оказалось пользователям Internet Explorer повезло еще меньше :) Если у вас белые окошечки вместо флешек, то пока вариант только один: качните архив по ссылке и внутри найдете swf файлик, который можно посмотреть локально на компе.

Читать дальше: Мантры о системах частиц - Particle systems in Flash

понедельник, 28 мая 2012 г.

Факторы успешности современных мобильных игр

Tiny wings, angry birds, cut the rope На FlashGAMM 2012 Алексей Тарасенко, игровой дизайнер Zeptolab, рассказывал о том, как сделать успешную мобильную игру.
Организаторы конференции выложили этот и другие доклады на своем сайте.  Можно скачать и ознакомиться. А я хочу просто выписать здесь основные тезисы.

Факторы успешности современных мобильных игр:

  1. Простота игровой механики
  2. Ориентация на широкую аудиторию игроков
  3. Интуитивное управление
  4. Короткая игровая сессия
  5. Облик главного героя
  6. Неожиданный, оригинальный игровой сеттинг
  7. Юмор
  8. Разнообразие геймплея
  9. Поддержка и развитие игры апдейтами
  10. «Отшлифованность» игры
  11. Маркетинговый подход
Читать дальше: Факторы успешности современных мобильных игр

пятница, 4 мая 2012 г.

Компонент для работы с растровыми шрифтами

Продолжая работу над портом движка Flixel на Haxe, столкнулся с необходимостью оптимизации работы с текстом. Проблема заключается в следующем: стандартный класс движка FlxText сильно завязан на использование метода draw(), и при обновлении текста создается новый экземпляр класса BitmapData, еще одним недостатком является то, что для каждого такого текстового объекта создается свой экземпляр класса TileSheet (если в качестве целевой платформы установлен c++, neko или android). В общем видно, что такая реализация класса для отображения текста довольно неудачна и нужно искать другие решения. И тут на сцену выходят растровые шрифты -- каждый символ такого шрифта представляет собой по-сути простое изображение и работать с ними можно точно также, как и с обыкновенными изображениями. В наборе классов Flixel Power Tools как раз есть такой класс FlxBitmapFont и я его уже давно портировал, но в нем также присутствует довольно раздражающее меня ограничение -- он поддерживает только моноширинные шрифты (все символы таких шрифтов должны иметь одинаковую ширину), а мне же хотелось чего-нибудь более универсального. И недавно мне на глаза попался движок Pixelizer (упоминал его в одном из предыдущих сообщений), в котором очень понравилась реализация такого компонента: в нем уже был такой функционал, как изменение цвета шрифта, обводка и тени, поддержка многострочного текста и др. Встала задача по переводу этого добра на другие рельсы:
  1. Реализация в виде отдельного компонента, не завязанного ни на какой из движков -- такой класс нужен был для того, чтобы наконец-то закончить портирование прелоадера Flixel.
  2. Реализация в виде плагина для Flixel, которую можно использовать непосредственно в играх.
Самая первая версия порта была готова через 1-2 дня, но сразу же вылезли проблемы с производительностью: для отрисовки текста использовался метод draw(), позволяющий задавать тексту цветовую трансформацию и прочие параметры. Нужно было искать другой способ отрисовки. Подумав немного и посмотрев на реализацию спрайтов в Flixel, пришел к следующему решению: на входе имеем набор растровых изображений, представляющих собой исходные изображения символов растрового шрифта, а для того, чтобы отображать масштабированный и "окрашенный" текст создается дополнительный массив трансформированных изображений символов, таким образом, мы можем использовать уже гораздо быстрый метод copyPixels() (после такого преобразования нагрузка на процессор при отрисовке текста снизилась в 2-4 раза).
Завершив с оптимизацией, я приступил к реализации дополнительных "фишек":
  • настройка размера шрифта
  • настройка расстояний как между символами, так и между строками текста
  • настройка переноса слов
На это ушло еще несколько дней, скачать и посмотреть что получилось можно со странички репозитория - https://github.com/Beeblerox/BitmapFont [...]
Читать дальше: Компонент для работы с растровыми шрифтами