![]() |
таймер или счетчик
Здравствуйте, было как то сказано что таймер лучше чем использование счетчика, может тормозить игра на старых компах, но так ли это,в чем конкретно все таки лучше таймер, или нет разницы.Разве так же на старых компах не будет тормозить игра с таймер.Вообщем хотелось бы мнения услышать
|
Что такое "счётчик"?
|
Вариант №1
Цитата:
Вариант №2 Цитата:
Зачем рассчитывать новые позиции объектов на экране (нагружать проц), ведь рендер может случиться не сразу, а после следующего TimerEvent.TIMER. Поэтому я не использую TimerEvent.TIMER. |
Цитата:
имеется частота кадров к примеру 60 вот за минуту код отрабатывается 60 скажем я поставил таймер на минуту,что бы передвинуть объект например или лучше я поставлю условие что если счетчик достиг 60 то передвинуть объект |
Цитата:
Цитата:
Цитата:
Цитата:
Я предполагаю, что речь об ENTER_FRAME vs. TIMER. Если это так, то суть не в том, какой использовать, а в том, чтобы рассчитать сколько времени прошло с момента последнего обновления, и передвинуть объекты на столько, на сколько они могли при текущей скорости и направлении передвинуться за это время. Тормозят оба. К слову, и ENTER_FRAME и TIMER в as3 основаны на таймере, и если среда подвисает по каким-то причинам, то и один и другой подвиснут вместе с ней |
Цитата:
Цитата:
Цитата:
|
Цитата:
|
Цитата:
по некоторым причинам хочу использовать ENTER_FRAME а не timer, вот и услышав где то на сайте по свешенному флеш что таймер лучше чет ENTER_FRAME, задумался почему???как так может быть))) отсюда и топик появился можно об этом чуть подробней? как бы своими словами,не техническим языком Если это так, то суть не в том, какой использовать, а в том, чтобы рассчитать сколько времени прошло с момента последнего обновления, и передвинуть объекты на столько, на сколько они могли при текущей скорости и направлении передвинуться за это время |
Таймер — фигня.
Другое дело, что привязка к FPS не гарантирует равномерного течения процесса. В таких случаях в каждом кадре просто засекают время, прошедшее с последнего рендера, с помощью getTimer() и делают с ним одно из двух: – подставляют в F(t), если имеется функциональная зависимость от времени – высчитывают, сколько раз нужно вызвать какой-то метод, скажем, update(), если имеем дело с дискретными вычислениями (а это все физ. движки как минимум) |
Цитата:
|
| Часовой пояс GMT +4, время: 19:57. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.