Показать сообщение отдельно
Старый 10.06.2012, 01:16   #2
AVL
Разработчик
 
Регистрация: 27.01.2011
Адрес: Афипский
Сообщений: 419
Написано 100 полезных сообщений
(для 182 пользователей)
Ответ: Алгоритм отображение FPS

Функция, возвращает количество вызовов себя за секунду, причем это значение обновляется раз в секунду:
var
  pr_fps, frames, pr_upd:integer;

function fps: integer;
var
  dt:integer;
begin
  dt := GetRelativeTimeMs - pr_upd;//время с предыдущего обновления значения (pr_upd)
  if dt<1000 then
    frames:=frames+1//если прошло менее секунды - считаем кадры
  else begin
    pr_upd:=pr_upd+dt; //если больше - запоминаем текущее время
    pr_fps:=frames;  //возвращаем то что посчитали
    frames:=0; //обнуляем счетчик кадров
  end;
  fps2:=pr_fps;
end;
Для удобства можно это вынести в модуль или либу.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Atqt (10.06.2012)