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

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

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

  • Уже упомянутый Native Cursor. Flash Player и десктопный AIR могут управлять курсором операционной системы. Причём очень давно. Периодически я встречаю проекты, в которых невооружённым взглядом видно, что курсор представляет собой DisplayObject. Используйте нативный курсор и почувствуете разницу. Материал на тему:  Working with native mouse cursors;
  • Обработка правой кнопки мыши доступна с версии плеера 11.2. События MouseEvent.RIGHT_CLICKMouseEvent.RIGHT_MOUSE_DOWNMouseEvent.RIGHT_MOUSE_UP;
  • Alchemy/FlasCC  — средство для компиляции C/C++ кода в .swc библиотеки, которые можно подключать к Flash/AIR проектам. Даже если вы далеки и C/C++, эта возможность может вам пригодиться, так как часто такие библиотеки будут работать значительно быстрей, чем AS3 код;
  • Нативные кодировщики JPEG и PNG. Несмотря на их существование многие разработчики продолжают использовать давно устаревшую библиотеку as3corelib. Те, кто знает о предыдущем пункте, используют библиотеки Alchemy/FlasCC. Но нативные кодировщики быстрей и того и другого. Как использовать: метод encode() класса BitmapData, классы JPEGEncoderOptions и PNGEncoderOptions;
  • Встроенная поддержка JSON. Так же, как и кодировщик изображений, нативный JSON работает быстрей любых библиотек. Класс: JSON;
  • Workers. Пусть костыльная и довольно неудобная, но многопоточность всё же есть, и в некоторых случаях её использование очень даже оправдано. Моя статья на эту тему;
  • Поддержка игровых устройств. В свои игры можно добавить поддержку игровых контроллеров, это не сложно. Класс: GameInput;
  • StageVideo. Использует аппартное ускорение для вывода видео, поддерживается как во FlashPlayer, так и в AIR(в том числе и в мобильном). Класс: StageVideo;
  • StageText. Использует нативные текстовые поля в AIR для мобильных устройств. Позволяет полноценно работать с возможностями системной клавиатуры, в отличии от обычного TextField. Класс: StageText;
  • Fullscreen с поддержкой клавиатурного ввода. С версии плеера 11.3  появился StageDisplayState.FULL_SCREEN_INTERACTIVE;
  • ATF текстуры. Adobe Texture Format — специально разработанный формат текстур для Stage3D. Быстрей других типов текстур загружается в память GPU и занимают меньше памяти. Большинство современных движков поддерживают ATF. Конвертер png2atf есть в Adobe Gaming SDK, документация по нему там же.

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