Вниз
Скачать: CL | DM;

FPS   Найти похожие ветки 

← →
Xerx ©   (2004-07-14 08:19) [0]

Объясните, почему у меня FPS не поднимается выше 72? Словно OpenGL использует вертикальную синхронизацию по-умолчанию! Весь движок - заливка экрана черным цветом!!! И все! Почему?


← →
Magikan ©   (2004-07-14 08:41) [1]

А он и использует по умолчанию вертикальную синхронизацию


← →
ПсихЪ_просто   (2004-07-14 09:07) [2]

http://delphi84.valuehost.ru/cgi-bin/forum.pl?id=1088438773&n=9


← →
Колбасьев ©   (2004-07-14 15:40) [3]

Тем более что реально обновление как раз и будет с данной частотой. Ведь обычно FPS в играх - не количество кадров сменяющихся на экране в секунду, а количество кадров сменяющихся в памяти в секунду.


← →
ПсихЪ_просто   (2004-07-14 17:15) [4]


> Колбасьев ©   (14.07.04 15:40) [3]

Получается, что OpenGL по умолчанию тормозит систему.


← →
ViK ©   (2004-07-14 23:27) [5]

Это твои дрова используют синхронизацию по умолчанию, в детонаторе есть три опции:
1) всегда выкл
2) по умолчанию выкл.
3) по умолчанию вкл.
Измени эту опцию и будет у тебя 300 фпс


← →
ПсихЪ_копия   (2004-07-15 00:07) [6]

Ссылку-то я дал, но вот как заюзать ту функцию - не знаю Может кто поделится? (: Каковы параметры инмпортированной функции?


← →
Magikan ©   (2004-07-15 03:47) [7]


 wglSwapIntervalEXT2:=wglSwapIntervalEXT_Func(SDL_GL_GetProcAddress("wglSwapIntervalEXT"));
if @wglSwapIntervalEXT2<>nil then
  wglSwapIntervalEXT2(0);


← →
Magikan ©   (2004-07-15 03:49) [8]

И еще тип нужно определить

type
 wglSwapIntervalEXT_Func = function (i: Integer): Boolean; stdcall;//cdecl;

var
 wglSwapIntervalEXT2: wglSwapIntervalEXT_Func;


← →
Magikan ©   (2004-07-15 03:53) [9]

Млин. Это старые наработки, где я SDL библиотеку использовал.
В винде нужно вместо SDL_GL_GetProcAddress использовать wglGetProcAddress (стандартная WinAPI"евская функция)


← →
Xerx ©   (2004-07-16 04:11) [10]

> Колбасьев
А то я не знаю! 3 месяца убил для 860 FPS в VESA в Паскале.
> ПсихЪ_просто
То, что я давно искал! И так просто!


← →
Xerx ©   (2004-07-16 04:29) [11]

>Magikan
А что-то разницы ни в 1 FPS!


← →
Magikan ©   (2004-07-16 04:31) [12]

Xerx ©,
OpenGL"евское расширение wglSwapIntervalEXT доступно с версии OpenGL 1.12

Объявляешь тип (прототип) функции wglSwapIntervalEXT:

type
wglSwapIntervalEXT_Func = function (i: Integer): Boolean; stdcall;


Далее где-нибудь объявляешь переменную этого типа, которая и будет являться функцией расширения

var
wglSwapIntervalEXT2: wglSwapIntervalEXT_Func;


Дальше нужно инициализировать переменную (получить адрес расширенной функции)

wglSwapIntervalEXT2:=wglSwapIntervalEXT_Func(wglGetProcAddress("wglSwapIntervalEXT"));


Проверяешь, произошла инициализация или нет. Если произошла, отключаешь синхонизацию

if @wglSwapIntervalEXT2<>nil then
 wglSwapIntervalEXT2(0);


Если хочешь обратно включить синхронизацию, то задаешь
wglSwapIntervalEXT2(1);


← →
Magikan ©   (2004-07-16 04:33) [13]

Это действует в полноэкранном режиме, где и происходит вертикальная синхронизация


← →
Xerx ©   (2004-07-18 04:42) [14]

> Magikan
Ну да, все так. wglSwapIntervalEXT2(0); - вызывается, но разницы нет. А как проверить версию OpenGL? glGetString(GL_VERSION)?
Версия - это поддержка на уровне видео карты?


← →
Magikan ©   (2004-07-19 03:41) [15]

Версия - это поддержка на уровне OpenGL (самой графической библиотеки). Если карточка от nvidia, то OpenGL-библиотека поставляется вместе с драйверами. Насчет ATI не знаю


← →
Xerx ©   (2004-07-26 04:28) [16]

И что мне делать, если у меня версия 1.4.0. Обновляться прикаждой перестановке системы и вместе с программой поставлять обновление OpenGL?


← →
Xerx ©   (2004-07-28 04:22) [17]

Я выключил в системе ограничение по FPS и получил 487. А как снять это ограничение програмно в системе (без OpenGL) раз оно там есть?



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

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.024 c
14-1099304820
Samael6
2004-11-01 13:27
2004.11.21
Формат MP3 TAGv2


8-1093082990
leha
2004-08-21 14:09
2004.11.21
Перехват звукового потока.


1-1099418975
kirilllius
2004-11-02 21:09
2004.11.21
стирается Canvas


1-1099924974
Polycom
2004-11-08 17:42
2004.11.21
Listbox и чтение из файла


3-1098696936
Mikhail
2004-10-25 13:35
2004.11.21
не могу удалить или переименовать столбцы в БД




   Наверх