![]() |
Ручное кэширвание (растеризация)
Мне необходимо заменить векторный муви клип на растеризованный растровый, т.е.
закэшиовать объект для анимации. Свойство cacheAsBitmap не подходит, т.к. при вращении клипа подложка постоянно пересоздается, что еще больше ухудшает ситуацию с производительностью. функция растеризации: Код:
private function rasterizeMovieClip(obj:MovieClip) Код:
bd_mc.addChildAt( (bd as DisplayObject),0);Код:
obj = null; |
1. Bitmap и BitmapData разные вещи.
2. Да. Вот как надо: Код AS3:
|
Спасибо помогло, но есть момент. У меня в векторном клипе находится колесо от машины и центр его это координаты 0,0, чтобы оно крутилось вкруг своей оси. Но, когда я вызываю bd.draw(obj);, то копируется лишь 1/4 часть колеса в bmpData, т.е. та часть координаты которой лежат за 0,0.
Как мне лучше всего плностью скпирвать в bmpData колесо при таких координатах колеса в векторном муви клипе? |
Matrix.
|
Matrix. - помогло.
Еще возник вопрос, теперь у меня есть клип с растровым колесом, отлично визуально выглядит, но теперь нужно у растрового клипа сделать центральную точку вращения, чтобы колесо могло вращаться как положено. Т.е. как задается программно точка вращения у клипа? |
Либо через transform, либо просто в контейнер типа Sprite положить битмап со смещенными координатами и вращать потом спрайт.
|
| Часовой пояс GMT +4, время: 02:36. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.