Что такое «галочка» в контексте разработки игр?


12

Итак, это вопрос для начинающих, но мне нужно знать, что означает термин «галочка» в контексте разработки игры? Это то же самое, что FPS? Благодарность!


1
Где вы взяли эту терминологию от BTW? Некоторые люди просто называют это тик, потому что physics engine update frameэто слишком долго для обычных игроков, чтобы помнить / понимать.
Балинт

Ответы:


18

Тик - это единица измерения времени, в частности, это относится к одному повторному действию (обычно широкому действию) в игре или периоду времени, которое потребляет действие.

Клещи повторяются и (в основном) регулярно; этот термин происходит от одного из звуков, которые издают часы («тик» и «ток»).

Обычно галочка - это итерация некоторого цикла, такого как основной логический цикл игры. Например, можно сказать, что игровая логика «тикает» один раз за кадр или что «во время тика позиции персонажей обновляются».

Однако это может также относиться к более детальным периодам; Можно сказать, что «такт AI в игре ограничен 5 мс времени обработки».

FPS - это показатель количества кадров (обычно отрисовывающих кадры), которые обрабатывает игра в секунду. Тики и FPS не обязательно связаны друг с другом, однако иногда люди будут называть одиночное выполнение игрового логического цикла «логическим кадром», и в этом случае (логическая) частота FPS будет числом тиков, обрабатываемых в секунду. Это особенно характерно для игр, которые по какой-либо причине применяют фиксированную частоту кадров для игровой логики или физики.


2

Большинство игр реализованы в цикле. Что-то вроде

def main
 setup(a, bunch, of, stuff)
 load(a, bunch, of, stuff)
 while true do {
   // <- A tick starts here
   read(a, bunch, of, inputs)
   call(a, bunch, of, stuff)
   do(a, bunch, of, stuff)
   update(a, bunch, of, stuff)
   // <- A tick ends here
 }
 clean(a, bunch, of, stuff)
 save(a, bunch, of, stuff)
end

Это довольно стандартный способ выполнения задач, и хотя рендеринг и элементы пользовательского интерфейса могут обрабатываться в отдельном потоке, внутри этого тика происходит реальная логика игры (нажмите w, чтобы переместить ваш корабль вперед).

Это также называется «кадром» и обычно называется частотой кадров (не путать с графическим материалом). Тик стал популярным синонимом, чтобы помочь дифференцировать их.

Как программист, ваша цель - иметь постоянную, стабильную частоту кадров (тиков), несмотря ни на что. Это делает ответы в вашей игре плавными и рациональными, и в то же время позволяет модели (программирование, а не графика) обрабатывать вещи с помощью компьютера. Время тиков не является постоянным во всех играх, и здесь нет магического числа. В некоторых играх скорость составляет 100 кадров в секунду, в других - 1 такт каждые 3 секунды.


1
Важно отметить, что не во всех играх статическая частота тиков. Screeps и Eve online поддерживают разные тики. Предполагается, что Minecraft имеет стабильный уровень тиков, но обычно не достигает этого и хорошо справляется с этим. Dwarf Fortress имеет статическую частоту кадров и сосет, когда не может идти в ногу, но все же работает.
Coteyr

Я думаю, что вы слишком смешиваете термины «рамка» и «отметка». Тики могут также охватывать несколько кадров (или циклов обновления).
Tyyppi_77

1

«Тик» может означать две разные вещи. Это может относиться к метке кадра, как вы сказали, когда вся видимая графика на экране обновляется. Однако термин «галочка» может также относиться к галочке игрового цикла. Этот тип тиков - то, где ваш код выполняется. Обычно ваши тики находятся в цикле из одних и тех же повторяющихся тиков, которые будут продолжаться, пока игра не остановится.


1

Тик, как правило, относится к одной итерации игрового цикла, в которой вычисляется вся логика, поэтому игры обычно имеют несколько тиков в секунду.

Однако во многих играх и графика, и игровой цикл выполняются в одном и том же потоке, потому что отображение графики обычно занимает не так много времени, поэтому логика прерывается или наоборот (хотя разработчики устанавливают проверки для таких ситуаций, как, например, принимая разницу во времени между последним и текущим кадром и регулируя скорость движения соответственно).

FPS означает F РАМЭС P ER S econd, поэтому для многих игр, да, технически говоря, каждый кадр один тик.


Так я могу использовать оба термина взаимозаменяемо?
user3843164

2
Я бы не стал. Я бы использовал «FPS» при ссылке на графику и «тики» при ссылке на логику, потому что в некоторых играх, особенно с интенсивной графикой, обычно есть два цикла: один для графики и один для логики.
СтронгДжошуа

Галочка это не нить.

@JoshPetrie Ооо, я вижу свою ошибку, спасибо за указание на это. Это сейчас исправлено.
Стронг Джошуа

1
Игры обычно имеют несколько тиков в секунду. «Часто», может быть. «Вообще», нет. Настольные или стратегические игры могут ставить галочку только тогда, когда пользователь делает ход, как в «итерации основного цикла», так и в «визуализации».
Анко
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.