Показать сообщение отдельно
Старый 22.07.2009, 15:15
Герыч вне форума Посмотреть профиль Отправить личное сообщение для Герыч Найти все сообщения от Герыч
  № 1  
Ответить с цитированием
Герыч
 
Аватар для Герыч

блогер
Регистрация: Apr 2009
Адрес: НиНо
Сообщений: 185
Записей в блоге: 12
Question Реальный fps

Это-как бы продолжение этого топика(про быструю отрисовку воды)

Вобщем сейчас я в тупике) Разделил полностью прорисовку и просчёт. Прорисовка на EnterFrame, просчёт на Timer.

в прорисовке fps ставлю достаточно большой(просто как запас, по нему просто оцениваю производительность, потом сделаю меньше), но как и раньше, в самой отрисовке контролирую, чтобы не загружать проц лишними операциями прорисовки. Для этого выбираю реальный fps, например 60, считаю кол-во миллисекунд на кадр(1000/60), ну и пишу
Код AS3:
if(getTimer()>drawAfter)
{
	prepareDraw();
	draw();
	drawAfter=getTimer()+16.6;
}
Всё хорошо, но это 60 fps-магическое число, ведь как я понимаю на разных компах картинка реально отображаться может и с большей частотой.
Вот у себя, если ставлю меньше 60 fps, то движение капелек получается рывкообразным.

Короче, как узнать реальную частоту показа(то что видит юзер, и что стоит рисовать)? Можно ли провести тест какой-нибудь или как-нибудь иначе?

Или же есть какое-либо событие, которое возникает в тот момент, когда flash рисует кадр, а не таймеро-подобный EnterFrame?