Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2002.11.04;
Скачать: [xml.tar.bz2];

Вниз

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

 
Карлсон   (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 вся ветка

Форум: "Media";
Текущий архив: 2002.11.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.012 c
1-11286
MsGuns
2002-10-23 12:42
2002.11.04
В Design-mode пропали линейки прокрутки фориы


14-11389
Шурик Ш
2002-10-16 18:10
2002.11.04
Злой админ отрубил доступ к аське


3-11113
Alex_000
2002-10-16 12:42
2002.11.04
Вопрос по SQL-оператору INSERT


3-11066
weak
2002-10-15 11:29
2002.11.04
Формат вывода в MSSQLе


1-11206
Di_wind
2002-10-24 22:34
2002.11.04
Class Eplorer





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский