Как стреляет шутер


Сегодня я хочу выглянуть из своего окошка и поделиться знаниями по весьма сложной теме, в которой я буквально пару месяцев назад ничего не понимал. Зачем? Ну, мне кажется, что это просто здорово – читать об этом обо всем. А еще это может дать кому-нибудь повод для дальнейшего погружения в тему.

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

Немного контекста

Должен признать, после того как вышла Bad Company 2 и, теперь уже, Battlefield 3, я спустил просто ужасающее количество времени за этой серией. А всякий раз, когда я понимаю, что трачу время на бесполезную ерунду, я пытаюсь получить от этой ерунды хоть что-нибудь, что можно было бы использовать в будущем.



И очень здорово, что разработчики из DICE активны и доступны на форумах, в твиттере и reddit и всегда можно получить целую кучу информации о том, как это все разрабатывалось. Кроме того, эти игры достаточно популярны и многие люди пытаются разобраться в исполняемых файлах для того чтобы увидеть что там сделано хорошо, а что плохо.



Что касается Battlefield, мне стало интересно, как работает сетевая часть. В основном из-за того, что эта игра одну вещь делает совсем не так, как все из того, во что я играл раньше — каждая выстрелившая тут пуля имеет ускорение и вполне подвержена воздействию гравитации. Конечно концепция снарядов сама по себе не нова, но очень редкая игра пытается ввести для снарядов еще и компенсацию времени отклика. Вообще-то я не могу вспомнить ни одной игры кроме Bad Company 2 и Battlefield 3, которые делали бы это, но это, очень может быть, просто сказывается недостаток моих знаний в этой области.