Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];

Вниз

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

 
Evgeniy_K   (2004-06-28 20:06) [0]

У меня был полнооконный режим 800x600. Я сделал оконный и прописал
"переключение страниц" через блиттинг. У меня FPS вырос с 75 до 130.
Как-то подозрительно. Сначала думал из-за того, что окно занимает не
всю область экрана. Тогда я сделал окно 1024x768. И по-прежнему FPS
большой. С чем это может быть связано? По логике он должен быть меньше
да и везде так написано. Окно следующее:

function windowinit(caption:pchar; width, height: dword): hwnd;
var
 wc: twndclass;
begin
 zeromemory(@wc,sizeof(twndclass));
 with wc do begin
   lpfnWndProc:= @wndproc;
   style:= CS_VREDRAW or CS_HREDRAW;
   hInstance:= hinstance;
   hIcon:= loadicon(0,IDI_APPLICATION);
   hCursor:= loadcursor(0,IDC_ARROW);
   hbrBackground:= getstockobject(LTGRAY_BRUSH );
   lpszClassName:= caption;
 end;
 if registerclass(wc) = 0 then begin
   messagebox(0,"reg class - incorrect","",mb_ok);
   result:=0;
   exit;
 end;
 result:= createwindow(caption, caption,
                       WS_POPUP,
                       0, 0,
                       width, height,
                       0, 0,
                       wc.hInstance, nil);
end;


 
Sapersky   (2004-06-28 20:55) [1]

См. название собственного вопроса :)

Отключить в полноэкранном режиме -
FPrimarySurface.Flip(FBackBuffer, DDFLIP_NOVSYNC or DDFLIP_DONOTWAIT);


 
rs.falcon   (2004-06-28 21:47) [2]

Сразу вопрос, а как включить или выключить синхронизацию в OpenGL ?


 
kerby ©   (2004-06-29 08:11) [3]

Sync    : wglSwapIntervalEXT(1);
NoSync  : wglSwapIntervalEXT(0);


 
Magikan ©   (2004-07-15 03:30) [4]


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


 
Xerx ©   (2004-07-16 04:18) [5]

>Magikan
А ты можешь с описанием переменных?


 
Evgeniy_K   (2004-08-03 19:25) [6]

Тогда вопрос, когда лучше использовать ..._DONOTWAIT, а когда ..._WAIT


 
NikeOLD   (2004-08-03 20:10) [7]

..._DONOTWAIT  - когда результат операции не важен, т.е. не отрендерилось и хрен на него
..._WAIT - чтобы рендерилось с гарантией


 
MANGOL   (2004-08-03 20:35) [8]

А вот у меня если отключить синхронизацию, всё начинает очень противно мигать, смотреть невозможно.
Что это? Можно ли это как-то исправить?


 
cyborg ©   (2004-08-03 20:36) [9]


> [8] MANGOL   (03.08.04 20:35)

Это отключённая видеосинхронизация ;)


 
MANGOL   (2004-08-03 20:58) [10]


> cyborg ©   (03.08.04 20:36)


Не понял... что, так и должно мигать?
а нафига это надо :)


 
cyborg ©   (2004-08-03 21:13) [11]


>  [10] MANGOL   (03.08.04 20:58)
>
> > cyborg ©   (03.08.04 20:36)
>
>
> Не понял... что, так и должно мигать?
> а нафига это надо :)


Почитай чего нибудь по теме "как показывает кинескоп".


 
NikeOLD   (2004-08-03 22:19) [12]

А нафига надо было отключать?
Если у тебя мигает, то и других может. Мне бы это очень не понравилось - стер бы игру сразу же.


 
Sapersky   (2004-08-04 01:41) [13]

а нафига это надо :)

Для тестирования скорости (производительности приложения/железа) это надо. В принципе, можно замерять не время между кадрами, а только время рендеринга. Но это муторнее, к тому же, лучше, когда скорость "на глаз" соответствует измеряемой.

Ну и ещё вариант - если всё очень уж тормозит, можно таким образом выжать немного дополнительных FPS.

всё начинает очень противно мигать, смотреть невозможно.

Оно, случаем, не прямо на primary рисуется? :)



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

Форум: "Игры";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.036 c
1-1100942077
viksoft
2004-11-20 12:14
2004.12.05
Как работать с конверторами CNV


4-1098160932
Sod
2004-10-19 08:42
2004.12.05
смена цвета фона приложения


3-1099832621
DeepProg
2004-11-07 16:03
2004.12.05
Отобразить Memo поле в DBGrid - вариация на тему


9-1091462459
Красный молоток
2004-08-02 20:00
2004.12.05
DDraw VSync


6-1095843465
Неуч
2004-09-22 12:57
2004.12.05
Выбор сетевого интерфейса.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский