37 подписчиков

Как работает механика стрельбы в шутерах.

281 прочитал
   В основе всего лежит конус прицеливания. Вершина этого конуса лежит в точке выстрела – точка выхода пули из ствола, а центр основания совпадает с точкой прицеливания.

В основе всего лежит конус прицеливания. Вершина этого конуса лежит в точке выстрела – точка выхода пули из ствола, а центр основания совпадает с точкой прицеливания. Все пули заперты внутри конуса и за его пределы не вылетают. Вес пули, для простоты, пока опустим. Все пули летят по прямой. Чем «уже» конус – тем легче попасть в цель, чем шире основание конуса – тем труднее. Нужно понимать, что размеры конуса постоянно меняются. Отсюда возникает первое понятие – точность.

Точность.

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

Точности противостоит расхождение:

  • разброс после выстрела,
  • разброс от движения

Эти характеристики усложняют прицеливание, каждую подробно опишу чуть ниже. Чтобы прицелиться, добиться максимального точного выстрела, нужно время. На время прицеливания влияет скорость схождения. Из одного оружия можно стрелять почти навскидку, из другого нужно долго прицеливаться.

Скорость схождения.

Скорость, с которой конус стремится к точности, если нет факторов увеличивающих разброс.

Разброс и схождение – два противоположные характеристики, которые борются между собой. Теперь подробнее про разброс.

Разброс при выстреле.

При каждом выстреле текущий разброс увеличивается на эту величину. Чем больше выстрелов, тем труднее попасть в цель – каждый выстрел увеличивает радиус основания конуса.

Разброс при движении.

В движении точность тоже ухудшается. Для каждого оружия эта величина своя, все логично.

Вот четыре основных характеристики, с которыми уже можно настраивать оружие. Ввод дополнительных характеристик делает настройку оружия более тонкой.

Допустим, мы хотим разделить движение игрока и смену цели. Тогда мы вводим характеристику разброс при движении оружием. Я бы назвал ее ухватистость. Вполне рабочая характеристика, особенно для тактических снайперских винтовок.

Что еще? Разброс пули от точки прицеливания происходит по нормальному двумерному закону, это значит, что пуля с большей вероятностью ляжет ближе к центру, чем к краю. Поэтому, уменьшая параметр точность в два раза вы, фактически только уменьшаете параметр точности в два раза. Совсем не обязательно ваши пули будут в два раза чаще попадать в центр. Это математика, здесь не все так просто.

Для учета веса, по-хорошему, нужно изгибать конус прицеливания, ведь, как известно, пуля сначала смещается вверх, а потом вниз. Но можно поступить проще. Просто ввести параметр снижение пули на каждые 10/100 метров расстояния. Вычислили точку попадания, а потом смещаете ее вниз на нужное смещение.

Вам не нужно будет разрабатывать собственную систему стрельбы, чаще всего она уже встроена в движок, но понимать как это работает должен каждый геймдизайнер.

Я рассказал про основные характеристики. Предлагайте свои дополнительные характеристики и вместе их обсудим.