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

Вниз

Кадры анимации   Найти похожие ветки 

 
h8394E   (2006-06-15 03:44) [0]

Доброго времени суток!
Вот, уже где-то 2 недели прошло после того как я начал D3D изучать... И вот, на чём я застрял... Как заставить кадры обновляться Максимум раз в секунду (т.е. если система позволяет - 300 раз, а если - нет, то 5 (ну это примерно))...

Я так понимаю, нужно вывод делать в цикле обработки сообщений (пишу на WinAPI) - где-то перед TranslateMessage(); но тогда если мышкой не двигать, то кадр не обновится... А если свой цикл организовать, то сообщения не будут обрабатываться...


 
Vasiliy   (2006-06-15 09:33) [1]

Обычно это делается в обработчике таймера.
А уж таймеру какую угодно частоту обновления можно задать.


 
Sapersky   (2006-06-15 14:37) [2]

Примерно так:

While (not bQuit) do
 If PeekMessage(msg, handle, 0, 0, PM_REMOVE) then begin
   TranslateMessage(msg);
   DispatchMessage(msg);
 end else begin
   // рисовать здесь
 end;

Но "максимум" раз в секунду - это часто не совсем то, что нужно, т.к. на разных машинах всё будет крутиться с разной скоростью.
Чтобы было одинаково, нужно либо выводить по таймеру (если максимальные 20 FPS, которые он может обеспечить, достаточно), либо смотреть, сколько времени заняла последняя отрисовка и в соответствии с этим корректировать величину смещения при анимации.


 
h8394E   (2006-06-15 17:29) [3]

Ну, вот как раз 2й случай мне больше подходит... (я на WinAPI пишу, поэтому мне стандартный таймер недоступен)... Причём, так я и писал, мне нужны не постоянные FPS, а переменные...



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

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

Наверх




Память: 0.47 MB
Время: 0.046 c
3-1164000814
Ольга
2006-11-20 08:33
2007.02.11
компоненты вкладки Servers


15-1169151182
m911
2007-01-18 23:13
2007.02.11
Сортировка


3-1164209328
Kolan
2006-11-22 18:28
2007.02.11
Данные на DBGrid е отображаются, а на DBCombobox - нет, почему?


2-1169553193
SamAman
2007-01-23 14:53
2007.02.11
WinAPI


15-1169025265
Курдль
2007-01-17 12:14
2007.02.11
Как определить подлинность швейцарских часов недорогого класса?