Форум: "Игры";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
ВнизFPS и потоки Найти похожие ветки
← →
mrAld © (2003-11-29 00:29) [0]Странно, запуская даже пустое приложение (без загрузки экрана) я получаю максимум 151 fps (OpenGL), тогда как загруженная квака даёт мне под 200. Как там организован игровой поток? Я делаю синхронизацию по мультимедийному таймеру, приложение работает синхронно, но почему так медленно??? И ещё. Добавляю плоские тайлы на сцену с низким качеством текстуры (штук 50, больших и маленьких), и fps падает аж до 30! Это нормально? Если есть какие-то способы рационального отображения, поделитесь плизз. А то фигня какая-то получается!
← →
mrAld © (2003-11-29 00:29) [0]Странно, запуская даже пустое приложение (без загрузки экрана) я получаю максимум 151 fps (OpenGL), тогда как загруженная квака даёт мне под 200. Как там организован игровой поток? Я делаю синхронизацию по мультимедийному таймеру, приложение работает синхронно, но почему так медленно??? И ещё. Добавляю плоские тайлы на сцену с низким качеством текстуры (штук 50, больших и маленьких), и fps падает аж до 30! Это нормально? Если есть какие-то способы рационального отображения, поделитесь плизз. А то фигня какая-то получается!
← →
Gandalf © (2003-11-29 19:29) [1]Синхронизацию с обратным ходом луча отключи. В ква нет синхронихации - в играх идет принцип рисуй так быстро, как только можещь.
← →
Gandalf © (2003-11-29 19:29) [1]Синхронизацию с обратным ходом луча отключи. В ква нет синхронихации - в играх идет принцип рисуй так быстро, как только можещь.
← →
MrAngel (2003-11-29 22:10) [2]Синхронизация луча в данном случае не причём. Тут что то другое. Кстати какая карточка ?
← →
MrAngel (2003-11-29 22:10) [2]Синхронизация луча в данном случае не причём. Тут что то другое. Кстати какая карточка ?
← →
mrAld © (2003-11-30 21:21) [3]Geforce 2 MX 200 32 mb
Аппаратная поддержка OpenGL, но расширенных функций не знаю, т.к. никогда их не использовал. Как отключить синхронизацию с обратным ходом луча? И как в OpenGL реализуется частичная прорисовка экрана?
ЗЫ: мне бы знать, как правильно организовать игровой поток
← →
mrAld © (2003-11-30 21:21) [3]Geforce 2 MX 200 32 mb
Аппаратная поддержка OpenGL, но расширенных функций не знаю, т.к. никогда их не использовал. Как отключить синхронизацию с обратным ходом луча? И как в OpenGL реализуется частичная прорисовка экрана?
ЗЫ: мне бы знать, как правильно организовать игровой поток
← →
Sapersky © (2003-11-30 23:29) [4]Я делаю синхронизацию по мультимедийному таймеру
Синхронизацию С ЧЕМ? И зачем? В любом случае, мультимедийный таймер на малых интервалах - порядочный тормоз (в смысле - других тормозит), т.к. выделяет себе поток с максимальным приоритетом. И довольно приличную часть процессорного времени твоя программа тратит не на то, чтобы рисовать что-то, а на высчитывание - когда она должна это делать.
Проще и быстрее крутить всё в основном цикле. Или, в случае VCL, в OnIdle с Done=False.
← →
Sapersky © (2003-11-30 23:29) [4]Я делаю синхронизацию по мультимедийному таймеру
Синхронизацию С ЧЕМ? И зачем? В любом случае, мультимедийный таймер на малых интервалах - порядочный тормоз (в смысле - других тормозит), т.к. выделяет себе поток с максимальным приоритетом. И довольно приличную часть процессорного времени твоя программа тратит не на то, чтобы рисовать что-то, а на высчитывание - когда она должна это делать.
Проще и быстрее крутить всё в основном цикле. Или, в случае VCL, в OnIdle с Done=False.
← →
mrAld © (2003-12-01 02:27) [5]Я пробовал OnIDLE. При загруженности сцены и уменьшении fps уменьшается скорость игрового времени. Приложение замедляется, тогда как в реале допускаю лишь тормоза, а не замедление времени. А по скорости что таймер, что Idle - одна }{рень. Мне интересно, как делают знающие люди? И реально API быстрее VCL, или это легенда? Простите за ламерский вопрос, но я долгое время был теоретиком и только сейчас занялся практикой :)
← →
mrAld © (2003-12-01 02:27) [5]Я пробовал OnIDLE. При загруженности сцены и уменьшении fps уменьшается скорость игрового времени. Приложение замедляется, тогда как в реале допускаю лишь тормоза, а не замедление времени. А по скорости что таймер, что Idle - одна }{рень. Мне интересно, как делают знающие люди? И реально API быстрее VCL, или это легенда? Простите за ламерский вопрос, но я долгое время был теоретиком и только сейчас занялся практикой :)
← →
hexone © (2003-12-01 12:33) [6]Возьми http://nehe.gamedev.net
lesson01 посмотри как там организован цикл обработки сообщений окна. Так как там - это единственный и неповторимый правильный вариант.
← →
hexone © (2003-12-01 12:33) [6]Возьми http://nehe.gamedev.net
lesson01 посмотри как там организован цикл обработки сообщений окна. Так как там - это единственный и неповторимый правильный вариант.
← →
Unknown user © (2003-12-05 18:48) [7]2 mrAld. Откажись от дельфовских принципов -таймеров, OnIdle и т. д. -в серъезных OGL приложениях это не используют. Строй программу как это делается в С - при старте запускается функция WinMain, которая представляет собой обработчик всех событий поступающих в главное окно приложения и обрабатывай эти события пока не дождешься WM_QUIT.
А вертивальная синхронизация у тебя все-таки включена. И частота кадров у тебя стоит 150. Я прав. Чтобы отключить зайди в свойствах экрана-дополнительно-GeForce 2...-параметры OGL-верт. синхронизация-всегда выкл.
И про тайлы, скажи точно формат текстур, кол-во полигонов в сцене и какой функцией ты эти текстуры накладываешь.
← →
Unknown user © (2003-12-05 18:48) [7]2 mrAld. Откажись от дельфовских принципов -таймеров, OnIdle и т. д. -в серъезных OGL приложениях это не используют. Строй программу как это делается в С - при старте запускается функция WinMain, которая представляет собой обработчик всех событий поступающих в главное окно приложения и обрабатывай эти события пока не дождешься WM_QUIT.
А вертивальная синхронизация у тебя все-таки включена. И частота кадров у тебя стоит 150. Я прав. Чтобы отключить зайди в свойствах экрана-дополнительно-GeForce 2...-параметры OGL-верт. синхронизация-всегда выкл.
И про тайлы, скажи точно формат текстур, кол-во полигонов в сцене и какой функцией ты эти текстуры накладываешь.
← →
Unknown user © (2003-12-05 18:48) [8]2 mrAld. Откажись от дельфовских принципов -таймеров, OnIdle и т. д. -в серъезных OGL приложениях это не используют. Строй программу как это делается в С - при старте запускается функция WinMain, которая представляет собой обработчик всех событий поступающих в главное окно приложения и обрабатывай эти события пока не дождешься WM_QUIT.
А вертивальная синхронизация у тебя все-таки включена. И частота кадров у тебя стоит 150. Я прав. Чтобы отключить зайди в свойствах экрана-дополнительно-GeForce 2...-параметры OGL-верт. синхронизация-всегда выкл.
И про тайлы, скажи точно формат текстур, кол-во полигонов в сцене и какой функцией ты эти текстуры накладываешь.
← →
Unknown user © (2003-12-05 18:48) [8]2 mrAld. Откажись от дельфовских принципов -таймеров, OnIdle и т. д. -в серъезных OGL приложениях это не используют. Строй программу как это делается в С - при старте запускается функция WinMain, которая представляет собой обработчик всех событий поступающих в главное окно приложения и обрабатывай эти события пока не дождешься WM_QUIT.
А вертивальная синхронизация у тебя все-таки включена. И частота кадров у тебя стоит 150. Я прав. Чтобы отключить зайди в свойствах экрана-дополнительно-GeForce 2...-параметры OGL-верт. синхронизация-всегда выкл.
И про тайлы, скажи точно формат текстур, кол-во полигонов в сцене и какой функцией ты эти текстуры накладываешь.
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.038 c