Page 1 of 1

Аппаратная независимость игр.

Posted: Wed Oct 12, 2005 9:07 pm
by andrew_programmer
Чтобы игра одинаково работала на компьютере с Max_fps=20 и на компьютере с Max_fps=100,нужно писать игру под компьютер с Max_fps=20 кадров в секунду.И соответственно все приращения координат спрайтов тоже брать для 20 кадров в секунду.Если при fps=100 для сдвига спрайта на 200 пикселей за секунду нужно приращение координаты 200/100=2,то при fps=20 это приращенние будет равно 200/20=10.Чем больше скорость приращения координаты,тем менее плавно перемещение спрайта.Для игр, в которых скорость перемещения спрайта 40-80 пикселей в секунду, достаточно fps=20,а вот если игра динамичная,как раз сейчас я пишу такую,то встает проблема выбора между аппаратной независимостью и качеством.
Как вы думаете- до какой степени нужно делать аппаратную независимость ?

Posted: Wed Oct 12, 2005 10:20 pm
by Mario79
С расчетом на как можно более медленные компы. И вообще в играх для этой цели вводят панель настроек. Вот и ты можешь, ввести такую. Можно будет крутить качестово/скорость.
Но так надо старться увеличивать быстродействие кода, у нас и так аппаратное ускорение не используется.

Posted: Thu Oct 13, 2005 6:13 am
by andrew_programmer
Я всегда стараюсь увеличить быстродействие кода(можете сами посмотреть).
А панель настроек- это хорошая идея!

Posted: Thu Oct 13, 2005 7:54 am
by halyavin
Можно измерять время между кадрами и подстраиваться автоматически. Так делают практически все игры. А настраиваются там эффекты/детализация.

Posted: Thu Oct 13, 2005 1:00 pm
by andrew_programmer
Вот,вот.
dx=int(нужное_смещение_за секунду_/FPS)
аналогично dy.

Posted: Thu Oct 13, 2005 3:32 pm
by sid1333
andrew_programmer wrote:Вот,вот.
dx=int(нужное_смещение_за секунду_/FPS)
аналогично dy.
Так и делают, в зависимости от FPS, а иначе у тя получится как в X-COM первом, когда на мощных современных компах ета игрушка шла ДИКО быстро, и 5-секундное перематывание времени превращалось в 5-минутное :P (кто играл тот помнт :) )