Вниз
Скачать: CL | DM;

Почему не получается использовать два таймера?   Найти похожие ветки 

← →
Карлсон ©   (2002-07-11 22:40) [0]

Подскажите плиз, почему в DelphiX не получается использовать два DXTimer"а одновременно?
Если на одном осуществлять вывод графики, а другой будет просто активен с заданным интервалом, то все в порядке.
Если же повесить какое-нить событие на дополнительный таймер, то вся сцена пропадает.
в чем дело?
неужели нельзя использовать второй DXTimer просто как обычный Timer из VCL ?


← →
Карлсон ©   (2002-07-12 23:38) [1]

Люди, ну отзовитесь же!!!!


← →
NailMan ©   (2002-07-13 03:26) [2]

Попробуй сделать обычный Timer последством WinAPI.
я их 5 штук запустил, и ни одного глюка.


← →
Карлсон ©   (2002-07-13 13:12) [3]

обычный то я делаю, а вот все же почему нельзя???
ну очень меня этот вопрос интересует.


← →
msts   (2002-07-13 17:45) [4]

я теорию не знаю, хотя практика использования DirectX под Delphi была по этому могу сказать умозрительно - дхтаймер только так называется и в своей основе не имеет ничего общего (кроме названия) с обычным таймером, представь схему работы дх -
основной поток обработки данных - сгенерить буфер - вывести на экран - снова сгенерить и т.д., есть окно (только одно) в котором отоброжается буфер, и все

теперь посмотрим исходники:

procedure TCustomDXTimer.Resume;
begin
FOldTime := TimeGetTime;
FOldTime2 := TimeGetTime;
Application.OnIdle := AppIdle;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
end;
Application.OnIdle - вызывается когда программа ожидает сообщений
AppIdle - собственно и есть DX OnTimer;
таким образом второй таймер накрывает процедуру первого

отсюда можно сделать вывод - что если программ чем то занята
- то и кадры не генерятся
что заметно если взять окно за каптион


← →
msts   (2002-07-13 17:56) [5]

PS: Собственно теперь мне понятно почему (в свое время) существенно падали FPSы когда обработку движения я выносил из дхтаймера в другой вцлтаймер (забивалась очередь сообщений - в результате "OnIdle" наступало реже) хотя в обычном режиме при адекватной загрузки процессора другим приложением оставались прежними



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
14-11399
iZEN
2002-10-14 09:08
2002.11.04
Сервисы на D6


3-11103
Ренат
2002-10-14 10:06
2002.11.04
Привелегии на всю базу


6-11375
sender
2002-08-30 13:44
2002.11.04
Программа для выделенного канала..


14-11401
zzet
2002-10-12 23:39
2002.11.04
Не было меня в той хате, куда закрыли этого кадра..


3-11076
ddorixe
2002-10-14 14:59
2002.11.04
Could not find record




   Наверх