Главная страница
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.046 c
15-1148570205
Kapoo
2006-05-25 19:16
2006.06.25
Молю, помогите с курсовой!..


6-1139889800
Интересующийся
2006-02-14 07:03
2006.06.25
Как поставить и прочитать кук при помощи TServerSocket?


2-1149265778
Ray
2006-06-02 20:29
2006.06.25
Разорвать цикл


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


15-1148970666
Antropoz
2006-05-30 10:31
2006.06.25
.Net remoting + COM