wiki

Диагностика проблем с производительностью

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

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

С чего стоит начать

  • Если у вас нестандартный скин, попробуйте сменить его на стандартный. Некоторые скины могут очень сильно нагружать систему (причём не только у вас, но и у остальных игроков).
  • Если у вас нет ограничения по FPS, выберите оптимальный уровень. О том, почему не стоит ставить Нет (во время игры), см. в разделе далее.
  • Если игра запущена в окне, переключитесь в полноэкранный режим.
  • Попробуйте обновить драйвера вашего оборудования (особенно видеокарты). Другой вариант: если вы их недавно обновляли, откатите изменения.
  • Если ваш компьютер использует технологию NVIDIA Optimus (или любую другую с двумя видеокартами, встроенной и отдельной), попробуйте принудительно запустить игру на каждой видеокарте по очереди, а затем сравнить производительность. Зачастую игры вроде osu! лучше работают именно на встроенной видеокарте. Для принудительного запуска osu! на конкретной видеокарте откройте настройки Windows и поищите в них Дополнительные графические параметры, затем добавьте туда osu! и выберите для него одно из двух значений, Энергосбережение либо Высокая производительность.

Различные виды "лагов"

Довольно сложно предоставить поддержку, когда любая проблема классифицируется словом "лаг", так что для начала необходимо определиться с терминологией.

Проблемы со звуком

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

  • Проверьте, случается ли это на всех доступных аудиоустройствах. Если вы используете USB-гарнитуру, то попробуйте подключить её к разъёму 3.5мм.
  • Проверьте, помогает ли включение опции Режим аудиосовместимости в настройках osu!.

Просадки FPS

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

  • Посчитайте, сколько примерно раз за игру это случается.
  • Проверьте, всегда ли наблюдаются фризы/скачки FPS.
  • Проверьте, насколько часто это происходит, равные ли промежутки времени между фризами?
  • Проверьте, есть ли эта проблема сразу после перезагрузки ПК.
  • Попробуйте закрыть все программы, которые используют внутриигровые оверлеи (Discord, Steam, NVIDIA Shadowplay и т.д.).
  • Убедитесь, что у вас включен режим игры. Он позволяет Windows выделять ресурсы специально для osu!.
  • Откройте диспетчер задач, затем перейдите на вкладку "Подробности" и включите сортировку по потреблению ЦП. Когда фриз произойдёт, обратите внимание на программы, которые в это время сильно нагружали процессор: это может быть антивирус, работающий в фоне, например. Чтобы было легче следить за диспетчером задач, перенесите его на другой монитор или запустите osu! в оконном режиме.

Задержка ввода

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

  • Проверьте, есть ли такой симптом на всех устройствах ввода, или только на одном.
  • Если вы используете сторонние драйверы, попробуйте заменить их на официальные.
  • Убедитесь, что osu! работает в полноэкранном режиме, так как во всех остальных режимах выше задержка.

Потеря управления

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

  • Нажмите Ctrl + F11, чтобы включить график времени кадра. Проверьте, много ли белого цвета на графике в тот момент, когда устройства перестают работать: если да, то другая программа или драйвер слишком сильно нагружают процессор и тем самым добавляют задержку ввода.

Низкий FPS

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

  • Проверьте, есть ли эта проблема сразу после перезагрузки ПК.
  • Попробуйте закрыть все программы, которые используют внутриигровые оверлеи (Discord, Steam, NVIDIA Shadowplay и т.д.).
  • Убедитесь, что в настройках видеокарты у вас не включена принудительная вертикальная синхронизация (она должна быть либо выключена, либо "по усмотрению приложения").
  • Попробуйте различные настройки ограничения FPS.
  • Убедитесь, что osu! работает в полноэкранном режиме (не в окне без рамки), это всегда повышает производительность.
  • Убедитесь, что у вас включен режим игры. Он позволяет Windows выделять ресурсы специально для osu!.
  • Откройте диспетчер задач, затем перейдите на вкладку "Подробности" и включите сортировку по потреблению ЦП. Когда фриз произойдёт, обратите внимание на программы, которые в это время сильно нагружали процессор: это может быть антивирус, работающий в фоне, например. Чтобы было легче следить за диспетчером задач, перенесите его на другой монитор или запустите osu! в оконном режиме.

Ограничение FPS

В osu! есть несколько вариантов ограничения частоты кадров, каждый — со своими плюсами и минусами. Стоит отметить, что osu! всегда ограничивает FPS в меню для снижения нагрузки на процессор.

Вертикальная синхронизация (VSync)

Эта настройка использует механизм вертикальной синхронизации, предоставленный видеодрайвером. Она гарантирует отсутствие разрывов изображения, но добавляет задержку в 1-2 кадра из-за буферизации кадров перед их отрисовкой.

Не рекомендуется для дисплеев с частотой обновления 60Гц. Вертикальная синхронизация становится более полезной при частоте обновления выше 120Гц, но при наличии GSync и FreeSync уже не нужна.

Энергосбережение

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

Рекомендуется для старых ПК или для энергосбережения на ноутбуках.

Оптимальное

Эта настройка ограничит частоту кадров восьмикратной частотой обновления монитора (максимум – 960). Рекомендуется использовать именно это ограничение FPS тем, кто не хочет сильно нагружать процессор/видеокарту, в то же время сохраняя высокий уровень производительности с низкой задержкой ввода.

Данная опция более предпочтительна, чем отсутствие ограничения, так как высокая частота кадров ведёт к увеличению затрат на сборку мусора, что, в свою очередь, может привести к фризам и просадкам FPS.

Нет (во время игры)

При этой настройке никакого ограничения частоты кадров нет. osu! будет рендерить столько кадров, сколько позволяет ваш процессор/видеокарта.

Может показаться, что это — наилучший вариант (если ваш компьютер справляется, то да), но стоит учитывать следующее:

  • При высокой частоте кадров увеличиваются затраты ресурсов на сборку мусора.
  • При сильной нагрузке на процессор и видеокарту может включиться троттлинг, что в целом понизит производительность.
  • Вообще, видеокарты не рассчитаны на рендеринг 1000+ кадров в секунду, поэтому может случиться что-то неожиданное: например, производительность будет ниже, а задержка — выше, чем при обычных условиях.

Если вышеперечисленное вас не пугает (как и повышенное тепловыделение, и излишне высокая нагрузка на оборудование), то отсутствие ограничения частоты кадров может обеспечить наиболее стабильную отрисовку кадров.

Свой вариант

Примечание для пользователей Cutting Edge: значение CustomFrameLimit принудительно ограничено 999. В стабильной версии клиента оно никак не ограничено.
Внимание: в этот режим нельзя перейти с помощью горячей клавиши F7. Чтобы он заработал, необходимо выбрать в настройках произвольное ограничение кадров, а затем перезапустить игру, иначе значение FrameSync сбросится, и всё нужно будет настраивать заново.

Эта настройка старается поддерживать частоту обновления кадров на уровне, который вы сами зададите. Её нельзя активировать через игру.

Чтобы самостоятельно выбрать максимальное чиcло кадров, отредактируйте файл с настройками:

  1. Откройте папку osu!, либо нажав на кнопку Open osu! folder в настройках игры, либо найдя её самостоятельно. В Windows osu! по умолчанию установлена в директорию C:\Users\<ваше имя пользователя>\AppData\Local\osu!, в MacOS — в /Applications/osu!.app/Contents/Resources/drive_c/osu!.
  2. Закройте osu!.
  3. Откройте файл osu!.<ваше имя пользователя>.cfg в блокноте или другом текстовом редакторе.
  4. Найдите строчку FrameSync = <значение> и впишите туда Custom.
  5. Найдите строчку CustomFrameLimit = <значение> и впишите туда нужное число.
  6. Сохраните файл с настройками. Перед этим необходимо закрыть osu!, если вы вдруг пропустили шаг 2.
  7. Запустите игру.