Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

"Вертикальная синхронизация" [Delphi, ogl]


Страницы:   1 2 3 4 5

Зм1й ©   (2006-07-16 21:13:00) 

Как её програмно (и вообще) отключить? И ещё вопрос: что она на самом деле из себя представляет? :)


Зм1й   (2006-07-18 16:27:00) [61]

Для предотвращения возможных вопросов

 while not QUIT_GAME and not FATAL_ERROR do
 if PeekMessage (Msg, 0, 0, 0, PM_NOREMOVE) then
 begin
   if GetMessage (Msg, 0, 0, 0) then
   begin
     Translatemessage (Msg);
     DispatchMessage (Msg);
   end;
 end else Rendering (Wnd);

procedure Rendering (hWnd: HWND);
var
ps: TPaintStruct;
begin
 FPS := 1000 / (GetTickCount - GlobalCntr);
 GlobalCntr := GetTickCount;

 DC := BeginPaint(hWnd, ps);
 glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);

 DrawGame (hWnd);

 SwapBuffers(DC);
 EndPaint(hWnd, ps);

 Inc (ShowFpsCntr);
 if ShowFpsCntr = 20 then
 begin
   TextFPS.Text[0] := 'FPS ' + FloatToStr(FPS);
   ShowFpsCntr := 0;
 end;
end;


@!!ex   (2006-07-18 16:20:00) [62]

Зм1й ©
Это однозначно не верт. синх виноват.
При нем у тебя бы значение было стабильно 75 кадлров, в редких случаях колеблется на +-1FPS.
inf - это от infinity(бесконечность)
Как же ты считаешь ФПС-то???


Зм1й   (2006-07-18 16:06:00) [63]


> cyborg ©   (18.07.06 16:02) [22]

Использую ли я sleep? Нет, конечно :)


cyborg   (2006-07-18 16:02:00) [64]

> [21] Зм1й ©   (18.07.06 15:32)

Sleep?


Зм1й   (2006-07-18 15:32:00) [65]


> KreeS ©   (18.07.06 01:06) [20]

Нет, частота обновления 75 герц, а fps принимает одно из трёх значений: 62.5, 66.7, inf.

P.s. Даже когда вывожу пару треугольников...


KreeS   (2006-07-18 01:06:00) [66]


> Что ты имеешь ввиду?

Полазь в свойствах экрана, найди частоту обновления, посмотри какая. Если совпадает с ФПС, значит поставлена принудительная синхронизация, хотя поидее должна все равно отключаться.


Зм1й   (2006-07-17 20:54:00) [67]


> cyborg ©   (17.07.06 20:16) [18]

Я тут, честно говоря, не особо шарю.. :)
Там есть пункты "Режим и синхронизация", "Стандарт синхронизации". Везде установлено "Пользовательские значения". Ещё есть варианты DMT, CVT, GTF...


cyborg   (2006-07-17 20:16:00) [68]

В драйвере посмотри, может стоять принудительная синхронизация, поставь "по выбору приложения".


Зм1й   (2006-07-17 19:58:00) [69]


>
> Могу предположить что рисуешь по таймеру?

Нет

> Можт это тормоза просто?

Нет, ничего не тормозит, всё идёт быстро

> А частота экрана какая?

Что ты имеешь ввиду?


KreeS   (2006-07-17 19:46:00) [70]


> Зм1й ©   (17.07.06 17:43) [14]

А частота экрана какая?
Можт это тормоза просто?


cyborg   (2006-07-17 19:44:00) [71]

> Но странно, что отключение синхронизации никак не повлияло
> на fps.

Могу предположить что рисуешь по таймеру?


Зм1й   (2006-07-17 17:43:00) [72]


> KreeS ©   (16.07.06 22:07) [1]

Спасибо большое. Но странно, что отключение синхронизации никак не повлияло на fps. Вывожу 3 тыс. треугольников с текстурой и fps 62-66 к/с. В чём может быть загвоздка?

> Cash ©   (16.07.06 22:22) [2]

Спасибо, может тоже когда-нибудь пригодится! :)


ancara   (2006-07-17 11:29:00) [73]

во нашел: http://www.nvworld.ru/docs/30fps.html


tButton   (2006-07-17 11:28:00) [74]


> Главная причина - физика и движение объектов

пардоньте, 30 фпс для вывода картинки - вполне достаточно
никто не мешает обсчитывать физику с частотой 500ФПС
это вообще отдельная вещь.


ancara   (2006-07-17 11:26:00) [75]


> а вообще, больше 30 ФПС на глаз не видно =)


не, к играм это не относится. Была где-то статейка, если найду ссылку, выложу, там подробно так рассказывалось, почему для фильма 25 fps нормально, а для игрушки нет. Главная причина - физика и движение объектов, остальные не помню... щас поищу...


tButton   (2006-07-17 08:53:00) [76]

да я его плавного и так не вижу =)
а во всяких FPS (First Person Shooter) курсора вообще нет, там только прицел =)
и вообще, нефик мышью так дёргать! =)))


Cash   (2006-07-17 08:47:00) [77]

КВС (FPS) для устройства GDI составляет 320 - 400, в зависимости от
конфига. 72 квс, а ты со скоростью ~100 пвс. Дай мыше сразу 150 и более
пвс, тогда увидишь неплавное перемещение мыши. У меня min 1500 пвс, дак
я не то чтобы скачков, у меня мышь как по маслу ялозит! Так все плавно,
что прям противно! :)))


tButton   (2006-07-17 08:09:00) [78]

странно.
двигаю мышу со скоростью ~100пкс/с
развёртка монитора стоит 72Гц
один хрен глаз не видит плавного движения
(винда)
или это у меня глаза такие? =)


Cash   (2006-07-17 07:42:00) [79]

tButton ©   (17.07.06 04:39) [6]:
Гы-гы-гы. :)
Особенно, когда мышу со скоростью 45-120 пикселей в секунду двигаешь! :)


tButton   (2006-07-17 04:39:00) [80]

а вообще, больше 30 ФПС на глаз не видно =)


Страницы:   1 2 3 4 5

Наверх

Титульная страница Поиск, карта сайта Написать письмо