![]() |
|
||||||||||
|
|||||
|
Делаю игру...
Зесля (трава) у меня состоит из крадратиков 200*200 jpeg ... я их цыклом for () { for () { //аттацу в мувик } } размер этого мувика(размер всей карты) получаеца ну где-то 25*25... соответственно 25*25*200 пикселей... И это все я движу.... получается (сами догадываетесь) ужастно... тормозит + эти квадратики то сьежаются, то разезджаются, в общем плохо... Пробвал, тем квадратикам что не видимые в данный момент в поле зрения 550*400, (3*2) давать параметр _visible = false создал класс и акждому присвоил, но то же самое... в общем помогите... как -то ж делают... |
|
|||||
|
Цитата:
|
|
|||||
|
может просто попробовать не программно это двигать, а
скажем мувик нарисовать и пусть он циклически играет
__________________
"We Are The Champions My Friends!" Queen |
|
|||||
|
Типа такого?
http://www.vl.nn.ru/gorod/ |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
|
Цитата:
|
|
|||||
|
Регистрация: Dec 1999
Адрес: Магадан
Сообщений: 763
|
Всё напрасно... сам подход - нехороший. Спасение флэша от собственной тормознутости - в умении перерисовывать только изменённые фрагменты окна. Сделав что-то, требующее перерисовки всех пикселей в окне, - убил всю прочую оптимизацию перерисовки объектов напрочь. Именно чтобы контролировать этот процесс и придумана кнопка Ctrl-E в тест-плеере.
Что плеер 8-й - тем более, т.к. по моим тестам выходит, что скорость перерисовки в 6-8 плеере падает относительно квадрата линейного размера области перерисовки, а вот в 9-м плеере - уже около корня квадратного на логарифм (спасибо новому рендереру, видимо). Это я натестировался в одном панорамном движке (не буду опять ссылку давать )
__________________
Верить никому нельзя. Мне - можно. :) |
|
|||||
|
Цитата:
|
|
|||||
|
Регистрация: Oct 2006
Сообщений: 11
|
var mc_cont:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());//Мувик который будет содержать в себе другие мувики которые мы конвертим в растр. В него аттачишь все свои 25*25 мувиков.
var myBitmapData:BitmapData = new BitmapData(25*200, 25*200, false, 0xFFDDFF); // Собственно битмап с размерами и заливкой и ещё с кучей опущенных парраметров.
var mc_b:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());//Мувик который будет содержать в себе растр и который мы будем двигать.
mc_b.attachBitmap(myBitmapData, this.getNextHighestDepth());//Аттачим к мувику битмап.
myBitmapData.draw(mc_cont);//Когда нужно бужет двигать мувик, вызываешь этотт метод. И быстро двигаешь мувик содержащий в себе битмап, т.е. mc_b
А если тебе больше вообще не нужно эти 25*25 мувиков обрабатывать, а только BitmapData двигать, то, сначала , а потом удаляешь мувик mc_cont и дальше работаешь с mc_b. Имхо так. |
![]() |
![]() |
Часовой пояс GMT +4, время: 09:55. |
|
|
« Предыдущая тема | Следующая тема » |
|
|