Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 01.08.2007, 10:06
zafod вне форума Посмотреть профиль Отправить личное сообщение для zafod Найти все сообщения от zafod
  № 1  
Ответить с цитированием
zafod

Регистрация: May 2007
Сообщений: 116
По умолчанию ограничение области отрисовки

флеш конечно так или иначе рисует все, но может есть какая-то технология, которая указывает что перерисовывать надо только определенную область. Я просто долго занимался directX - и это реально прибавляло скорости.
Единственный вариант который я нашел - это tile map, грубо говоря реисовать только тайлы, которые попадают в область экрана и перерисовывать только те где произошли изменения.
Очень буду благодарен за ссылки или примеры по поводу

Старый 01.08.2007, 13:39
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Собственно флеш перерисовывает только ту часть которая изменилась.

Код:
showRedrawRegions (true);
Показывает ту самую область перерисовки.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 01.08.2007, 14:18
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 3  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
iNils - Которая изменилась, но независимо от того, видима она или нет.
Хочется чтоб невидимые сейчас области не жрали ресурсов.
__________________
Reality.getBounds(this);

Старый 01.08.2007, 14:28
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 4  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
А они не расходуется. Это легко проверить.
Возьмите файл в аттаче и запустите, посмотрите как тормозит анимация. А теперь зайдите в объект, раскомментируйте там строчку кода, запустите еще раз и посмотрите на скорость работы.
Вложения
Тип файла: zip redraw.zip (46.4 Кб, 68 просмотров)
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 01.08.2007, 22:15
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 5  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Что-то ты не понимаешь никак Речь идет о графике и анимации, находящейся за границами Стейджа, т.е. невидимой пользователю
Ресурсы она жрет или по-твоему не жрет? Не про редрав-функцию речь вообще, она наверняка ничего не жрет, ктож спорит. А вот в мультике я двигаю "сцену", типа перемещаю камеру, а у меня там фильтров-блендов-альфов как ворон в москве. И хотя половину объектов давно уже не видно, все они просчитываются, уж это-то точно по фпс видно. Так вот и был вопрос- как можно если можно вообще это дело прекратить? И считать только то, что реально в данный момент в окошке плеера видно.
__________________
Reality.getBounds(this);

Старый 01.08.2007, 22:50
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 6  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Вы об этом... Опять же, берем мой пример выше и убираем все объекты далеко за пределы видимой области, но один оставим на месте. И что, у вас производительность не возрасла? У меня в разы быстрее работает, чем когда все линии видимы.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 01.08.2007, 23:04
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 7  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Плеер не занимается отрисовкой объектов, расположенных вне сцены.

Старый 02.08.2007, 00:47
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 8  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
А чем тогда? просчетом? Ну вот здесь у меня на 290 кадре если дождетесь, за областью видимости вводится новый объект класса цветочек, и fps падает в два раза. Цветок же появится в области видимости только в 300 кадре, и на fps это уже никак не повлияет.
__________________
Reality.getBounds(this);

Старый 02.08.2007, 01:35
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 9  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Wolsh, без fla о чем может идти речь?
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 02.08.2007, 01:49
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 10  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Не, ребят, я это-то от сердца оторвал - не люблю недоделки показывать.
Фла здесь ничем не поможет - анимация как анимация, никаких скриптов принципиально (не считая, понятно, счетчиков)
Еще раз - на 290 фрейме рисуется объект цветок, пока еще за пределами экрана. До этого его нет на сцене. Теперь он появляется на сцене и fps падает. Но мы его еще не видим - он за рамкой. И появляется в поле видимости в 300 фрейме. ФПС при этом не меняется.
Я делаю вывод что он таки отрисовывается, хотя и за пределами экрана.
__________________
Reality.getBounds(this);

Создать новую тему Ответ Часовой пояс GMT +4, время: 16:24.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 16:24.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.