Rotator. Класс индикатора загрузки

Часто бывает нужно отобразить какой-нибудь индикатор, но возиться с рисованием и анимированием не хочется. Вот такую  крутилку, например:

325

Предлагаю простой и универсальный способ решения этой проблемы — класс Rotator.

Первое, что нужно сделать — зайти на сайт preloaders.net, выбрать и настроить любой индикатор. Image type обязательно APNG. После нажатия на Generate под сгенерированной анимацией появятся дополнительные параметры, нужно выбрать Download as sprites и скачать png. Preloaders.net выдаёт странные png файлы огромного веса, которые PNGGauntlet отказывается сжимать. Нужно пересохранить png через фотошоп или любой другой графический редактор, а затем сжать через PNGGauntlet. Таким образом вес png файла уменьшится в несколько раз.

Далее нужно подключить png через embed или загрузить через Loader, создать экземпляр класса Rotator и добавить его в дисплей лист:

Первый параметр конструктора — битмапдата png, о котором говорилось выше, второй — прямоугольник с размерами, указанными при создании индикатора на preloaders.net (Preloader size), x и y прямоугольника нулевые. Также у конструктора есть два необязательных параметра: autoplay:Boolean — стартовать анимацию сразу,  interval:uint - это интервал обновления анимации в миллисекундах, он определяет скорость анимации.

Методы play и pause позволяют запускать и останавливать анимацию соответственно. Когда экземпляр больше не нужен, его нужно очистить через метод dispose.

Судя по тексту, всё это довольно заморочено, но на деле на все эти действия уходит пара минут, если не слишком увлекаться настройкой ротатора на сайте.

Опубликовано 27.12.2014 в 00:10 · Автор illuzor · Ссылка · Написать комментарий
Рубрики: программирование · Теги: , ,

ImageAtlas. Класс для работы с картами спрайтов

Суть:

Класс для удобной работы с множеством изображений. Вместо прикрепления большого количества изображений через embed или сборки swc/swf с графикой, используется карта спрайтов(png+xml). Аналог класса TextereAtlas из Starling Framework. Доступ к изображением происходит по имени файла нужного изображения.

Как использовать:

var atlas:ImageAtlas = new ImageAtlas(atlasBitmapData, atlasXML);

Есть у данного класса один явный минус — общая битмапдата атласа всегда находится в памяти, но для проектов под пк в большинстве случаев это не критично.

Для уменьшения веса swf можно пережать png, например через PNGGauntlet.

Опубликовано 26.12.2014 в 00:27 · Автор illuzor · Ссылка · Написать комментарий
Рубрики: программирование · Теги: , ,

Возможности AS3 API, о которых не все знают

После прочтения поста от TheRabbit  я решил развить тему.

AS3 API не стоит на месте, постоянно появляются новые возможности. Но, почему-то, не все разработчики о них знают. Здесь я перечислю самые, на мой взгляд, важные из этих возможностей:

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

 

Опубликовано 22.02.2014 в 18:17 · Автор illuzor · Ссылка · Написать комментарий
Рубрики: air, flash · Теги: , ,

Сборка ane с помошью ant

В своём уроке по созданию Native Extension я давал довольно замороченный способ сборки ane файла,  который состоял из следующих шагов:

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

Относительно недавно я открыл для себя инструмент под названием Apache Ant и жалею, что не обратил на него внимания раньше. Он позволяет проделать все эти шаги в один клик. Если кратко, то ant — это утилита для автоматизации компиляции и сопутствующих процессов(работа с файлами, изменения кода и т.д.). Сборочный конфиг представляет собой обычный xml. Для его запуска нужно выполнить команду ant -f build.xml. Сам по себе ant довольно прост и при желании его можно освоить за один вечер, хотя и придётся подглядывать в документацию.

На примере расширения Android-Notification-Extension-ANE я кратко расскажу, как это работает.

Читать полностью »

Опубликовано 07.12.2013 в 23:18 · Автор illuzor · Ссылка · 7 комментариев
Рубрики: air · Теги: , , , ,

Leap Motion

Leap MotionПару месяцев назад ко мне приехала заветная коробочка. Ещё до её приезда у меня была масса идей, что с ней делать, но после просмотра демок и попыток что-то написать самому, почти все пришлось отбросить. Работало оно ужасно. По началу я думал, что софт ещё очень сырой и нужно ждать, когда допилят, но с каждым обновлением прошивки девайс тупил всё больше. Я даже написал в техподдержку, где мне сказали, что это аппаратный баг и выслали новый leap. К его приезду вышла версия софта под номером 0.7.9. При запуске программа стала ругаться на то, что девайсу мешает слишком яркий свет, хотя на самом деле, свет у меня довольно тусклый, но практически над столом висит люстра. После выключения света всё заработало отлично — и новый девайс, и тот, который приехал раньше. Сомнительное удовольствие: выключать свет и программировать в темноте. Собственно в темноте я написал несколько демок,  некоторые из них заснял (видео под катом).

В целом моё мнение следующее: в том виде, в котором leap motion сейчас, он подходит только для «поиграться». Не думаю, что кто-то будет использовать его в повседневной жизни постоянно. Возможно, было б удобно, если бы он был встроен в клавиатуру и никак не выдавал бы себя физически. В таком случае будет удобно комбинировать его с клавиатурой и мышью в повседневной работе

Есть несколько критичных минусов:

Читать полностью »

Опубликовано 01.06.2013 в 15:58 · Автор illuzor · Ссылка · Один комментарий
Рубрики: flash, другое · Теги: ,

Livecoding with COLT

colticonСовсем недавно команда под предводительством Евгения Потапенко показала миру инструмент для лайвкодинга под названием Code Orchestra Livecoding Tool (COLT).  Штука получилась просто волшебная, лично я от неё в восторге. Почитать можно на официальном сайте. Пока что, есть некоторые баги, но они очень оперативно исправляются. Ещё не все возможности, которые были заявлены, реализованы. Они появятся чуть позже.

Также объявлен конкурс, в котором можно выиграть одну из пятидесяти лицензий на программу. Вот видео, которое отлично демонстрирует возможности COLT (не знаю, конкурсное оно или нет):

И моя скромная работа.

Опубликовано 18.05.2013 в 01:37 · Автор illuzor · Ссылка · Написать комментарий
Рубрики: flash, программирование · Теги: ,

Native extensions

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

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

Android Communication Extension. Возможности:

Android File Extension. Возможности:

Android Notification Extension. Возможности:

Android Sharing Extension. Возможности:

Инструкции и примеры использования есть по ссылкам.

 

Опубликовано 20.04.2013 в 15:24 · Автор illuzor · Ссылка · 3 комментариев
Рубрики: air, mobile · Теги: , ,

Flash platform update

Flash Player обновился до версии 11.6, а AIR и соответственно AIR SDK до версии 3.6.

Вроде, ничего необычного, но одна интересная штука есть. На странице загрузки AIR SDK написано «Adobe AIR SDK & Compiler».

Без проблем, конечно же, не обошлось. После распаковки AIR SDK в папку Flex SDK при компиляции проекта компилятор ругался на один из файлов спарка. При чём тут он, совершенно не понятно. Причём ругался только один раз: первый раз ругается, второй — компилируется без проблем. Стоило чуть изменить код — снова ругается. Помню, раньше была подобная проблема и решаласть откатом с JRE 7 на JRE 6. В данном случае я испробовал несколько версий JRE, проблема не исчезла. Я работаю во FlashDevelop и дело в том, что mxmlc всё ещё остался у власти.

Раз старый компилятор тупит, обратимся к новому. Немного гугления и инструкция по активации ASC2 найдена. Нужно в каталоге Flash Develop заменить файл Tools\fdbuild\fdbuild.exe на пропатченную версию, предварительно сделав резервную копию. Наверняка в новых версиях FD сделают удобный способ переключения между компиляторами.  После этого в консоли мы увидим mxmlc-cli.jar вместо mxmlc.jar. ASC2 более строг, чем mxmlc. Перед использованием нужно внимательно ознакомиться с его особенностями. Также стоит взглянуть на обзорную статью от Thibault Imbert.

Некоторые старые проекты с новым компилятором скомпилировались без проблем. Те, которые компилироваться отказываются, можно довольно быстро вернуть к жизни изменениями кода, следуя описанию компилятора и описаниям ошибок.

Из главных особенностей ASC2 можно выделить оптимизацию кода, сжатие LZMA, Inline функции, и конечно же компиляция с ключём -advanced-telemetry для Adobe Scout. В общем, штука хорошая.

Опубликовано 13.02.2013 в 20:44 · Автор illuzor · Ссылка · 7 комментариев
Рубрики: flash · Теги: , ,

Android AIR notification ane

Залил на github пример Native Extension для Android под названием Notification Extension.
Расширение позволяет отображать нативные Alert и Toast.

 

 

 

 

 

 

 

 

 

 

 

 

https://github.com/illuzor/NotificationExtention

Вот подробный урок, ради которого расширение и писалось.

 

Опубликовано 05.11.2012 в 20:44 · Автор illuzor · Ссылка · Написать комментарий
Рубрики: mobile · Теги: , , , ,

DialogManager — библиотека для отображения диалоговых окон

Хочу поделиться небольшой библиотекой собственного производства.

Она представляет собой менеджер диалоговых окон.

Особенности:

Читать полностью »

Опубликовано 26.08.2012 в 21:46 · Автор illuzor · Ссылка · 3 комментариев
Рубрики: программирование · Теги: , ,

Удобный доступ к методам класса загруженного swf

Иногда работа с классами из загруженного .swf файла бывает не очень удобной из-за того, что загружающий .swf не знает классов загружаемого.

Читать полностью »

Опубликовано 06.08.2012 в 17:02 · Автор illuzor · Ссылка · 5 комментариев
Рубрики: программирование · Теги: 

Полезные инструменты для as3 разработчика

Чем больше я работаю с as3, тем больше различных вспомогательных инструментов встречаю. Странно, но некоторые разработчики о них даже не догадываются.

Это мини обзор таких инструментов.

 


Читать полностью »

Впечатления от Flash CS6

На сайте Adobe уже можно скачать новый Flash Professoinal.

Первое, что бросается в глаза, это конечно же перерисованная графика. Иконка, сплешскрин, окно приветствия — всё выглядит очень круто. Но это мелочи. Что порадовало — это общая скорость работы. Запускается программа меньше, чем за 5 секунд. И если cs5/cs5.5 при запуске разделялся на два окна, то в cs6 оно одно.

Немного изменился принцип сворачивания/разворачивания панелей. Если раньше они работали по клику на всю полосу, на которой находятся заголовки, то теперь клик работает только на области самого заголовка. Не очень удобно.

Одна из интересных фишек — генерация карт спрайтов. Жмём по мувиклипу в библиотеке правой кнопкой, выбираем Generate Sprite Sheet, экспортируем и получаем изображение и xml к нему. Достойная вещь. Хотя, лично я предпочитаю для этих целей TexturePacker.

Конечно же, теперь FlashPlayer 11.2 и AIR 3.2 поддерживаются из коробки.

Опять новая версия .fla (Flash CS6 Document), минимум можно сохранить под CS5. Очередная головная боль для пользователей более ранних версий.

А вот экспорт в html5  я почему-то не нашёл.

На этом, похоже, и всё. Изменений не много. Самое значительное — скорость работы.

Опубликовано 07.05.2012 в 16:33 · Автор illuzor · Ссылка · 2 комментариев
Рубрики: flash · Теги: ,

InGit

Создал сегодня свой первый публичный репозиторий.

https://github.com/illuzor/Simple-Android-Game

Там живёт исходник примера простой игры для Android на AIR Mobile. Возможно, пригодится тем, кто раньше не работал с мобильным AIR и хочет посмотреть, что это вообще такое.

Игра с акселерометром, локальным хранилищем, вибрацией(NativeExtention).

Несколько скриншотов:

 

Подробный урок:

Часть 1

Часть 2

Опубликовано 31.03.2012 в 23:32 · Автор illuzor · Ссылка · 8 комментариев
Рубрики: mobile · Теги: , , , ,

UDK, Scaleform, AS3

Изучаю интересную штуку под названием Scaleform под Epic UDK.

Если кратко, то это система для создания интерфейсов на флеше для крупных игровых движков(Unreal Engine 3, Cry Engine и другие).

Вот что у меня получается:

 

 

И пример того, что можно сделать:

 

Опубликовано 31.03.2012 в 13:00 · Автор illuzor · Ссылка · 3 комментариев
Рубрики: другое · Теги: , ,