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

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

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

Регистрация: Apr 2014
Сообщений: 215
По умолчанию таймер или счетчик

Здравствуйте, было как то сказано что таймер лучше чем использование счетчика, может тормозить игра на старых компах, но так ли это,в чем конкретно все таки лучше таймер, или нет разницы.Разве так же на старых компах не будет тормозить игра с таймер.Вообщем хотелось бы мнения услышать

Старый 13.07.2015, 09:39
ZackMercury вне форума Посмотреть профиль Отправить личное сообщение для ZackMercury Найти все сообщения от ZackMercury
  № 2  
Ответить с цитированием
ZackMercury
 
Аватар для ZackMercury

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,921
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
Что такое "счётчик"?
__________________
There is no thing in this world that is not simple.

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

Регистрация: Dec 2014
Сообщений: 312
Вариант №1
Цитата:
TimerEvent.TIMER
TimerEvent.TIMER
рендер
TimerEvent.TIMER
рендер
TimerEvent.TIMER
TimerEvent.TIMER
рендер

Вариант №2
Цитата:
Event.ENTER_FRAME
рендер
Event.ENTER_FRAME
рендер
Event.ENTER_FRAME
рендер

Зачем рассчитывать новые позиции объектов на экране (нагружать проц), ведь рендер может случиться не сразу, а после следующего TimerEvent.TIMER.

Поэтому я не использую TimerEvent.TIMER.

Старый 13.07.2015, 09:57
delphic вне форума Посмотреть профиль Отправить личное сообщение для delphic Найти все сообщения от delphic
  № 4  
Ответить с цитированием
delphic

Регистрация: Apr 2014
Сообщений: 215
Цитата:
Сообщение от ZackMercury Посмотреть сообщение
Что такое "счётчик"?
я имел в ввиду например
имеется частота кадров к примеру 60
вот за минуту код отрабатывается 60
скажем я поставил таймер на минуту,что бы передвинуть объект например
или
лучше я поставлю условие что если счетчик достиг 60 то передвинуть объект

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

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
Зачем рассчитывать новые позиции объектов на экране (нагружать проц), ведь рендер может случиться не сразу, а после следующего TimerEvent.TIMER.

Поэтому я не использую TimerEvent.TIMER.
Есть же event.updateAfterEvent(); если надо, чтобы обязательный рендер был.
Цитата:
имеется частота кадров к примеру 60
вот за минуту код отрабатывается 60
При частоте 60 кадров, код отрабатывает 60 раз в секунду, а не в минуту, соответственно в минуту 3600 раз

Цитата:
скажем я поставил таймер на минуту,что бы передвинуть объект например
или
лучше я поставлю условие что если счетчик достиг 60 то передвинуть объект
Какая-то полная каша. Для начала неплохо бы доходчиво сформулировать свой вопрос.
Цитата:
было как то сказано что таймер лучше чем использование счетчика, может тормозить игра на старых компах, но так ли это,в чем конкретно все таки лучше таймер
Можно пример, где это было сказано?
Я предполагаю, что речь об ENTER_FRAME vs. TIMER. Если это так, то суть не в том, какой использовать, а в том, чтобы рассчитать сколько времени прошло с момента последнего обновления, и передвинуть объекты на столько, на сколько они могли при текущей скорости и направлении передвинуться за это время.
Тормозят оба. К слову, и ENTER_FRAME и TIMER в as3 основаны на таймере, и если среда подвисает по каким-то причинам, то и один и другой подвиснут вместе с ней

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

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,921
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
Цитата:
имеется частота кадров к примеру 60
вот за минуту код отрабатывается 60
За минуту?

Цитата:
скажем я поставил таймер на минуту,что бы передвинуть объект например
А чем интерфейс Flash IDE не угодил? Там можно двигать что куда угодно.

Цитата:
лучше я поставлю условие что если счетчик достиг 60 то передвинуть объект
Никто так не делает.
__________________
There is no thing in this world that is not simple.

Старый 13.07.2015, 11:04
callme вне форума Посмотреть профиль Отправить личное сообщение для callme Найти все сообщения от callme
  № 7  
Ответить с цитированием
callme
 
Аватар для callme

Регистрация: Dec 2014
Сообщений: 312
Цитата:
Сообщение от caseyryan Посмотреть сообщение
Есть же event.updateAfterEvent(); если надо, чтобы обязательный рендер был.
Что выбрать из этих двух вариантов и почему?

Старый 13.07.2015, 11:57
delphic вне форума Посмотреть профиль Отправить личное сообщение для delphic Найти все сообщения от delphic
  № 8  
Ответить с цитированием
delphic

Регистрация: Apr 2014
Сообщений: 215
Цитата:
Сообщение от caseyryan Посмотреть сообщение
Есть же event.updateAfterEvent(); если надо, чтобы обязательный рендер был.

Тормозят оба. К слову, и ENTER_FRAME и TIMER в as3 основаны на таймере, и если среда подвисает по каким-то причинам, то и один и другой подвиснут вместе с ней
вот я то не помню где было утверждение о том что лучше использовать timer, вот я и подумал с чего бы то это timer лучше enter_frame.

по некоторым причинам хочу использовать ENTER_FRAME а не timer, вот и услышав где то на сайте по свешенному флеш что таймер лучше чет ENTER_FRAME, задумался почему???как так может быть))) отсюда и топик появился

можно об этом чуть подробней? как бы своими словами,не техническим языком
Если это так, то суть не в том, какой использовать, а в том, чтобы рассчитать сколько времени прошло с момента последнего обновления, и передвинуть объекты на столько, на сколько они могли при текущей скорости и направлении передвинуться за это время

Старый 13.07.2015, 12:36
Zebestov вне форума Посмотреть профиль Отправить личное сообщение для Zebestov Посетить домашнюю страницу Zebestov Найти все сообщения от Zebestov
  № 9  
Ответить с цитированием
Zebestov
Lorem ipsum
 
Аватар для Zebestov

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Таймер — фигня.
Другое дело, что привязка к FPS не гарантирует равномерного течения процесса.
В таких случаях в каждом кадре просто засекают время, прошедшее с последнего рендера, с помощью getTimer() и делают с ним одно из двух:
– подставляют в F(t), если имеется функциональная зависимость от времени
– высчитывают, сколько раз нужно вызвать какой-то метод, скажем, update(), если имеем дело с дискретными вычислениями (а это все физ. движки как минимум)
__________________
Поймай яблоко 2!

Старый 13.07.2015, 13:31
delphic вне форума Посмотреть профиль Отправить личное сообщение для delphic Найти все сообщения от delphic
  № 10  
Ответить с цитированием
delphic

Регистрация: Apr 2014
Сообщений: 215
Цитата:
Сообщение от Zebestov Посмотреть сообщение
Другое дело, что привязка к FPS не гарантирует равномерного течения процесса.
на сколько это критично? совсем прям видно не вооруженным глазом? вот этот момент мне интересен.

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

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

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


 


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


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