![]() |
Embed и оптимизация затрат памяти
Монтируем растр в класс SomeClass на уровне статической константы:
Код AS3:
Код AS3:
Тогда нам придется изменить класс с растром так: Код AS3:
Код AS3:
Код AS3:
Вопрос: как избавиться от избыточности? (Как вмонтировать карту пикселей?) Или даже так: как вмонтировать карту пикселей без использования Flash IDE, а используя FD? Или я в корне все неверно понимаю? |
Специально тестировал
Цитата:
Цитата:
Другой вопрос - часто нужна только BitmapData и как-бы незачем создавать ради ее получения еще и Bitmap - так что от второго подхода хуже не будет это точно. |
Пометьте IMG как private и будет вам щастье...
Или я не уловил суть проблемы? |
Такой код компилируется и работает, но с предупреждением:
Код AS3:
Код AS3:
Код:
Warning: Class 'EmbeddedBitmapData' does not extend the 'DefineBits' asset base class 'flash.display.Bitmap'. |
Цитата:
Цитата:
Добавлено через 2 минуты Но если там реально оптимизация, то эта статья ей противоречит: http://help.adobe.com/ru_RU/as3/mobi...7189-7ffe.html |
Цитата:
Цитата:
И если создавать каджый раз ту же битмапдату через new BitmapData() , а старую сносить - это будет в 4 раза медленне, чем реиспользовать старую, предварительно почистив fillRect-ом. Тесты про различия на пару метров при создании кучи Bitmap'ов говорят только о том, чо эти битмапы каким-то хитрым образом используют одну и ту же вэмбеженную BitmapData. Только и всего. Кстати, если нарисовать что-то на одном из img.bitmapData, остальные изменятся? (руки не доходили протестить это) |
Цитата:
|
т.е. получается, что
Код AS3:
Код AS3:
|
нет, не правильно - ведут себя разным образом, т.к. в первом случае все битмапы получают одну и ту же карту пикселей, а во втором случае создаются битмапы с "уникальными" картами пикселей
в кавычках потому, что нашелся ответ на загадочную оптимизацию из верхних постов: http://help.adobe.com/ru_RU/as3/mobi...7189-7ff9.html |
Однако, оказывается они это совсем недавно сделали, в Flash Player 10.1.
|
| Часовой пояс GMT +4, время: 13:21. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.