• Расскажите о оптимизации мультиплеера на ПК?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    1. Чем статичнее предметы, тем меньше информации необходимо передавать между сервером и клиентом, тем меньше нагрузка на сервер и его пропускную способность, тем меньше "лагов" и "багов";
    2. Клиент не испытывает никаких проблем. Сервер испытывает проблемы только если к нему подключено много клиентов и у каждого нужно просчитать множество информации. Из-за этого клиент дольше ждет пакет с данными от сервера и в игре, в зависимости от алгоритма просчета интерактивности, предметы игры могут телепортироваться или долго лежать на месте;
    3. Графики на сервере нет. Там сплошные векторы и математика;
    4. Есть различные алгоритмы. Например, если на клиенте всегда ждут ответа от сервера, то движение происхожит рывками (по мере поступления пакетов-ответов от сервера). Если же на клиенте стоит экстраполяция, то клиент вычисляет несколько шагов вперед и отрисовывает их, проверяя уже отрисованное по пакетам от сервера. Однако, если есть какое-то несоответствие, то со стороны клиента начинаются "телепортики";
    5. Железо на серверах уже очень хороши и с расчетом огромных объемов данных проблем нет. Все дело в медленных каналах связи и их пропускной способности;
    6. Много чего) Есть интересные статьи на том же хабре про то, как борются с медленными каналами связи в скоростных шутерах, как просчитывают полет пули и попадания по цели. Например, в том же overwatch headshot'ом считается приличная такая сфера вокруг головы.
    Ответ написан
    Комментировать