Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.25;
Скачать: CL | DM;

Вниз

Как ограничить FPS   Найти похожие ветки 

 
2Wish   (2005-11-07 21:38) [0]

Здрасте, скажите какие есть способы ограничения FPS в DelphiX?


 
DR0N ©   (2005-11-07 21:51) [1]

А что поменять интервал DelphiX ого таймера уже не помогает?
TimerInterval=1000/FPS... где FPS - нужная нам скорость.


 
2Wish   (2005-11-07 22:07) [2]

Так я делал, но тогда неправильно будет работать DXInput, потому что DXInput1.Update; присходит во время таймера. :(


 
DR0N ©   (2005-11-07 22:42) [3]

Сделай 2 таймера...
Хотя проблема не ясна у тебя процесс идет в отрисовке в том же таймере, о какой асинхронности может идти речь?


 
2Wish   (2005-11-08 18:31) [4]

2DR0N
Асинхронность между нажатием игром на кнопку и процесом обновления DXInput. Два таймера тоже не выход, из-за ActiveOnly, есть другие предложения?


 
Sphinx ©   (2005-11-09 09:34) [5]

С DelphiX не работал...
Юзаю чистый DirectX и WinAPI и вполне доволен, поступаю следующим образом:
В основном цикле обрабатываю все сообщения и отрисовываю графику, а по событию таймера обновляю состояние клавишь через DirectInput.

Событие WM_TIMER не использую, потому как а) оно выстраивается в очередь сообщений и нужно обрабатывать в основном цикле, б) размерность этого таймера зависит от системы (9х - 55мс, NT - 10 мс).

Пользуюсь таймером из MMSystem. Во-первых у него есть процедура обратного вызова, для меня это удобней чем с обработкой сообщения WM_TIMER, а во-вторых у этого таймера размерность до 1 мс, если не меньше...

Если все выше сказанное соотнести с VCL получится, что обработка графики идет по OnIdle, а чтение состояния клавишь - по OnTimer (только таймер не стандартный TTimer и даже не TDXTimer).

> Асинхронность между нажатием игром на кнопку и процесом
> обновления DXInput.

По идее DirectInput обрабатывает ВСЕ нажатия, если только не произошло переполнение буфера.
О какой асинхронности идет речь ??
Запоздалая реакция на нажатие ??? Тогда нужно чаще обновлять состояние кнопок...
Пропускаются моменты нажатия/отпускания ? Увеличь размер буфера и уменьши интервал опроса...



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

Текущий архив: 2006.06.25;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.029 c
15-1149110794
Kolan
2006-06-01 01:26
2006.06.25
Среда виснет при отладки в потоках.


1-1147878191
Yr2
2006-05-17 19:03
2006.06.25
При доступе к БД из NT-сервиса русские буквы в виде "иероглифов"


15-1149012642
Bogdan1024
2006-05-30 22:10
2006.06.25
агенства недвижимости - поделитесь опытом


15-1149178238
Зм1й
2006-06-01 20:10
2006.06.25
Принтер Epson Photo R800


6-1139817774
Anton_123
2006-02-13 11:02
2006.06.25
Delphi, Web & RealVideo