![]() |
Прорисовка клипа в BitmapData с сохранением масштабирования
- Создаю черный круг (BallVis)
- Увеличиваю/масштабирую его размер по ширине, через свойство width/scaleX. - Создаю объект BitmapData и ф-ей draw() прорисовываю BallVis используя для расположения матрицу. В итоге BallVis появляется на экране, но не увеличенный по ширине? Вероятно, в матрицу нужно добавить как-то параметры width/scaleX… Код AS3:
|
Код AS3:
|
Дело в том, в реальной программе visual.x/y= 0, получается что мне нужно взять масштабирование у матрицы объекта, а вот положение из физического тела.
Делаю так (body.Item.visual - это условно ball): Код: item.visual.transform.matrix.tx = item.body.position.x; item.visual.transform.matrix.ty = item.body.position.y; //Но, почему то после присваивания положения item.visual.transform.matrix.tx равен нулю (хотя в item.body.position.x = 400) ? objectsMap.draw(item.visual, item.visual.transform.matrix); Можно, конечно обновить x/y визуального объекта, но в моем случае у меня все будет притормаживать, в сцене больше 200 физ. объектов, и все работает норм, если не трогать item.visual.x/y, а сразу прорисовать в битмапу с помощью матрицы. Код AS3:
|
Код AS3:
|
Спасибо всем, примерно так и сделал:
Код AS3:
|
|
>>каждый раз создает новую матрицу, это конечно может быть и не критично, но я бы обошелся без этого.
Да, спасибо я уже в объекте создал переменные хранящие скейл матрицы a/d, чтобы не обращаться к геттеру. |
waterMatrix - это что?
|
| Часовой пояс GMT +4, время: 16:15. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.