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

Вниз

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

 
Карлсон   (2002-12-12 23:52) [0]

Пишу игру на DelphiX.
при появлении на экране большого количества объектов, FPS естественно снижается.
насколько я понял, нужно ставить ограничение, что если в данный момент ФПС ниже допустимого уровня, то интервал таймера уменьшить, если больше, то увеличить.
я прав или нет?


 
Ev_genus   (2002-12-13 00:24) [1]

А зачем это нужно?


 
Mirovodin   (2002-12-13 02:12) [2]

А зачем, ты поставь у TDXTimer значение в 1000/30-40 и у тебя будет FPS ~33. А если машина не вытягивает, он будет снижаться. Если машина мощная останется на заданном уровне.


 
Bones   (2002-12-13 05:26) [3]

Удалено модератором


 
Карлсон   (2002-12-13 10:57) [4]

2 Mirovodin © (13.12.02 02:12)
дак это получается, что мой второй пенек не вытягивает ~200 объектов?
просто если объектов ~50, то фпс снижается на две-три единицы, а вот когда больше, то все тормозит.

2 Bones © (13.12.02 05:26)
туториалов дофига в нете.
поищите.


 
Mirovodin   (2002-12-13 13:05) [5]

2 Карлсон ©

Как, как - очень просто! Не умелое использование ресурсов в самом коде компонентов DelphiX, сожрет любой объем оперативной памяти. Там очень плохая работа с поверхностями, по этому когда много объектов начинаются тормоза. Хотя может это у тебя код плохо написан.


 
Карлсон   (2002-12-13 13:10) [6]

а какая тогда альтернатива иксу?
писать на DirectX API ?
книга у меня есть, но хочется чего-то попроще.
может быть GLScene ?
но с OpenGL я вообще никогда не работал.
как быть?


 
Mirovodin   (2002-12-13 13:24) [7]

2 Карлсон © Альтернатива. Нужно точно установить из за чего тормозит. Например в одной из версий DelphiX спрайты которые были не видимы все равно обрабатывались при проверке столкновений. Потом этот баг убрали, но я не уверен что других не осталось. По этому нужно точно установить что дольше всего работает. И потом попытаться оптимизировать. Скорее всего придется править код именно DelphiX.


 
Denton   (2002-12-13 14:06) [8]

Вопрос, как сделать чтобы перемишение объектов (или анимация) не зависила от скорости (FPS)?


 
Mirovodin   (2002-12-13 19:02) [9]

Устанавливать предел FPS. т.е. не поднимать его выше определенного значения, тогда на любой машине получится одинаково или медленнее.
2 Denton © Я не понимаю, зачем тебе обновлять экран когда там НИЧЕГО не меняется ??? Это для 3D грфики нужно, там свет/тень и т.д.


 
Denton   (2002-12-13 20:29) [10]

Да, для 3D. у меня скорость перемещения объекта напрямую зависит от скорости смены кадров. Вопрос, как сделать их независимыми???


 
Sapersky_   (2002-12-13 23:04) [11]

2Denton:
Смотрим, сколько времени затратили на вывод кадра (функция WinAPI QueryPerformanceCounter). Домножаем вектор скорости на коэффициент, пропорциональный этому времени.
Можно во избежание резких скачков усреднять коэффициент по нескольким кадрам.


 
Карлсон   (2002-12-14 00:06) [12]

ну у меня последний релиз от Хори.
сейчас установил андельфи на пятую дельфю, попытаюсь переписать код под нее.
мож че путевое получится? :)



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

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

Наверх




Память: 0.47 MB
Время: 0.007 c
3-59633
Devourer
2003-04-28 14:54
2003.05.19
запрос SQL


9-59530
ogo
2002-12-10 10:12
2003.05.19
телстурирование в opengl


14-59934
Некто2002
2003-04-30 11:41
2003.05.19
Как сбросить установки DBGrid?


7-59962
ККВ
2003-03-19 06:11
2003.05.19
Подавление нажатия клавиши


4-59979
SunSay
2003-03-18 23:25
2003.05.19
Как активизировать окно





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский