Уход от привязки к FPS
решил сделать уход от привязки к FPS как в FAQ создаем фпс. сделал так
Function update_igrok() If user_time=0 user_time=MilliSecs() new_time=MilliSecs() delta_t=(new_time-user_time) user_time=new_time If EntityDistance(igrok,piv)>20 MoveEntity igrok,0,0,.1*delta_t If AnimSeq(igrok)=0 Animate igrok,1,.5,1,trans Else If AnimSeq(igrok)=1 Animate igrok,2,1,0,trans EndIf TranslateEntity igrok,0,-.03*delta_t,0 End Function но у меня игрок дергается при передвижении. скажите где моя ошибка и как ее исправить пожалуйста |
Re: Уход от привязки к FPS
Нужно выяснить смысл величины delta_t.
Когда разрабатывается игра, она нацелена на такую-то частоту обновления, допустим, 100 кадров в секунду. Это значит, что если у игрока игра выдает 100 ФПС, delta_t должна быть равна единице. Если реальный показатель ФПС ниже расчетного, нужно ускорить все движения, то есть delta_t > 1. Если же игра идет слишком быстро, delta_t < 1. Теперь можно подумать о реализации: Код:
time = 0 При ФПС = 100, на обработку одного кадра уходит времени Код:
const TARGET_FPS = 100 Код:
const TARGET_FPS = 100 |
Re: Уход от привязки к FPS
спс щас попробую
|
Re: Уход от привязки к FPS
не получается:( выходит ошибка вариабл тип мистак
|
Re: Уход от привязки к FPS
Где ошибка?
|
Re: Уход от привязки к FPS
delta_t# = elapsed / period
|
Re: Уход от привязки к FPS
Проверь, чтобы у elapsed и period был тип Float.
|
Re: Уход от привязки к FPS
Столкнулся с подобной проблемой.
Подскажите плиз, какая функция возвращает значение ФПС и как можно ограничить максимум ФПС (например 25 установить) ? |
Re: Уход от привязки к FPS
shaman_al
нету таких функций, самому писать надо |
Re: Уход от привязки к FPS
получить FPS
fps=1000/(millisecs()-a_time) a_time=millisecs() ограничить фпс: while b_time>millisecs()-(1000/требуемый_фпс) wend b_time=millisecs() |
Re: Уход от привязки к FPS
http://blitzetc.boolean.name/articles/stab.htm
Ограничить так можно: Код:
timer = CreateTimer(25) |
Re: Уход от привязки к FPS
раз уж про ето тема зашла то можно ставить flip 0 для того чтобы комп тупо не ждал пока картинка прорисуется на мониторе, а занялся бы чем нибудь более полезным.
|
Re: Уход от привязки к FPS
Правильно Flip 0 и Таймер на 25 фпс... и будет само то!!!!
|
Часовой пояс GMT +4, время: 18:32. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot