Перейти к содержанию

directx c++ Visual Studio 2012


Рекомендуемые сообщения

Необходимо подсчитать и вывести на экран FPS в моём directx меню, помогите с исходным кодом разобраться

нашел какой-никой исходник, работает он конечно некорректно,помогите его доработать:

    DWORD FrameCnt;    // кол-во кадров
float TimeElapsed; // промежуток времени
float FPS; // наш фпс
float oldTime;
float newTime;
float deltatime;

FrameCnt++; // c каждым кадром увеличивается на 1, т.е. это кол-во кадров кот. мы разделим на промежуток времени
newTime = GetTickCount(); // записываем в ньютайм время после всех выполненных операциях
deltatime = newTime - oldTime; // узнаем сколько времени проходит от начала до конца
TimeElapsed += deltatime; // и прибавляем эту разницу к таймэлапседу

if(TimeElapsed >= 500.0) // если в таймэлапседе накопилось 0.5 сек, то
{
FPS = 1000*(float)FrameCnt / TimeElapsed; // делим кол-во кадров прошедшее за полсекунды на таймэлапсед(равный примерно 0.5 сек)
TimeElapsed = 0.0f; // обнуляем таймэлапсед, для следующего подсчета
FrameCnt = 0; // и обнуляем кол-во кадров
}

p.s. украл с киберфорума

Ссылка на комментарий
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.