Вниз
Скачать: 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.014 c
7-11530
TAndrew
2002-08-28 19:04
2002.11.04
Права пользователя при запуске программы


1-11242
Beglec
2002-10-23 02:30
2002.11.04
Интересный косяк


3-11100
theEnter
2002-10-14 08:55
2002.11.04
Можно ли сделать SQL запрос внутри Дельфи к результатам запроса в


3-11061
Alecs
2002-10-11 11:56
2002.11.04
InterBase в терминальном режиме


6-11357
Leny
2002-09-03 13:45
2002.11.04
Client@Server




   Наверх