Блог разработчиков о влиянии FPS на скорострельность

Сегодня разработчики PlayerUnknown’s Battlegrounds опубликовали блог, в котором объяснили причины взаимосвязи частоты кадров и скорострельности оружия, а также рассказали о том, что они предприняли для решения этой проблемы. PUBG Corp. отметили, что исправление, установленное в тестовый клиент игры, не будет перенесено на основные серверы с патчем #26.

Всем привет!

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

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

Порой такая схема может приводить к ошибкам и расхождению между ожидаемым темпом стрельбы и темпом, зависящим от активации таймера. Расхождение может колебаться между 0 и полной длительностью кадра (дельта-секундами). Чем меньше у вас FPS, тем дольше длится каждый кадр, и, соответственно, больше возможная ошибка. Кроме того, PUBG не допускает выпуска больше одной пули на кадр. При выборе полностью автоматического режима такие ошибки со временем могут накапливаться, что усугубляет проблему. Разумеется, оружие с более высокой скорострельностью страдает от ошибки сильнее, чем оружие с низким темпом стрельбы.

Решение

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

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

Так как теперь темп стрельбы постоянен и не зависит от частоты кадров, некоторые игроки могут столкнуться с ухудшением контроля отдачи, особенно у оружия с высокой скорострельностью при низком значении FPS. На такое оружие все еще будет влиять ограничение в 1 пулю на кадр, поэтому в случае, когда FPS падает ниже 20, реальный темп стрельбы такого оружия, как микро-УЗИ, все же будет ниже.

Дальнейшие планы

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

С благодарностью,
Команда PUBG

В патче #26 PUBG Corp. добавили в игру два новых транспортных средства, сигнальную ракетницу, улучшили оптимизацию, а также исправили большое количество багов.

Источник: vk.com