воскресенье, 3 апреля 2011 г.

Асинхронное декодирование изображений в Flash Player'е

Thibault Imbert порадовал новостью о том, что в Adobe AIR 2.6 и в Flash Player начиная с версии 10.2 будет доступно асинхронное декодирование изображений. Зачем это нужно? Ну, при загрузке большого количества изображений или изображений очень высокого разрешения всегда начинались проблемы, т.к. их декодирование происходило синхронно, при обращении к ним. Добавляешь, к примеру, кучу спрайтов на экран в первый раз и получаешь тормоза. Или делаешь графический редактор и у тебя блокируется весь пользовательский интерфейс при первой отрисовке изображения.

Вот как выглядит все это на AS3:
// create a LoaderContext
var loaderContext:LoaderContext = new LoaderContext();
// specify async decoding
loaderContext.imageDecodingPolicy = ImageDecodingPolicy.ON_LOAD;
// create a Loader
var loader:Loader = new Loader();
// inform the Loader
loader.load( new URLRequest("http://dl.dropbox.com/u/7009356/IMG_1398.jpg"), loaderContext )

Работает, кстати, и с Loader.loadBytes()

Вот еще видео с демонстрацией:

Async Bitmap Decoding in Adobe Flash Player from Thibault Imbert on Vimeo.

Комментариев нет:

Отправить комментарий