Вопрос от пользователя
Здравствуйте.
Не подскажите, как бы узнать из-за какого компонента ПК может тормозить игра. То ли дело в процессоре, то ли в видеокарте, есть ли какой-нибудь способ для начинающих (без реестров и разных администраторских команд)?
Доброго дня!
В целом да, если игра начинает идти рывками, фризит — не всегда можно сразу назвать причину. В этой статье покажу один из вариантов, как можно одновременно посмотреть нагрузку на видеокарту, ЦП, сеть, ОЗУ и пр., и по этим данным сделать кое-какие выводы.
Думаю, вариант вполне рабочий, поможет определиться с узким местом на вашем компьютере (подскажет с апгрейдом). По крайней мере, неплохая первичная диагностика!
👉 Кстати!
Не так давно выше в свет облачный сервис для гейминга. Он позволяет играть во многие игровые новинки на стареньком ПК/ноутбуке.
*
Определяем причину тормозов и лагов в игре
Что понадобиться
Для начала работ необходима утилита FPS Monitor (ее загрузку и установку опускаю, т.к. она стандартна, и думаю, что интереса для широкого круга читателей не представляет).
FPS Monitor
Официал. сайт: https://fpsmon.com/ru/
Главное окно FPS Monitor
Чем уникальна и хороша эта утилита? Дело в том, что она одновременно и прямо в игре может показать загрузку (и температуру) процессора (и всех его ядер), оперативной памяти, видеокарты, сети и пр.
Т.е. вы в режиме реального времени, прямо в игре, можете увидеть, что с видеокартой все ОК (ее загрузка чуть выше 65%, скажем), а вот процессор уже загружен на максимум и метрики все красные (90%). Выходит, что искать виновного в лагах и начинать “копать” нужно по направлению ЦП…
Примечание: утилита платная (правда, стоит всего 350 руб.). Но вообще, для нашей задачи сгодится и бесплатная демо-версия.
Тестируем и диагностируем
Перед запуском игры, рекомендую открыть редактор горячих клавиш утилиты FPS Monitor, и задать комбинацию для показа метрик (оверлеи). Дело в том, что в некоторых играх метрики автоматически не показываются и их нужно включать “горячей” комбинацией (см. скрин ниже).
Редактор горячих клавиш / FPS Monitor
После, можно запустить игру и начать вести мониторинг метрик. Желательно загрузить различные уровни, карты, поиграть какое-то время (10-15 мин.), чтобы увидеть реальные показания температуры и загрузки железа.
Что очень удобно: утилита показывает все в процентах (можно сразу сориентироваться), плюс окрашивает цифры в разные цвета (в первую очередь обращайте внимание на желтые и красные цвета).
Скриншот с показаниями из игры WOW
Обращаю внимание, что в разных играх у вас могут быть разные показания соотношений нагрузки: скажем, в одной сильно загружена видеокарта, в другой – ЦП. Для примера на ноутбуке, за которым я проводил тесты, при запуске WOW и Civilization 4 – нагрузка на видеокарту была примерно одинаковая (+/- 15%), в то время как загрузка ЦП отличалась на порядок!
Фото из Civilization IV (игра идет без тормозов, показания FPS Monitor – OK)
Краткие выводы
- обращайте внимание на красные цифры (говорят о высокой загрузке. Пример, как они выглядят, показан на скрине ниже).
Макс. нагрузка на ядро ЦП
- кроме загрузки, посматривайте за показаниями температуры. Если она выходит за пределы оптимальных значений, то это может стать причиной появления лагов и фризов (прим.: какая температура ЦП, видеокарты, HDD считается нормальной);
- при высокой нагрузке на ЦП, проверьте, используется ли технология Turbo Boost (на многих ноутбуках, например, для экономии энергии она не задействована). О том, как это проверить;
- причиной повышения температуры часто становится пыль, которая забивает вентиляционные решетки системы охлаждения и мешает нормальной циркуляции воздуха. Не забывайте 1-2 раза в год чистить компьютер от пыли;
- если у вас перегревается ноутбук, то дополнительно порекомендую ознакомиться вот с этой инструкцией.
*
Альтернатива FPS Monitor (обновление от 01.2020)
Кстати, некоторые пользователи отмечают, что у них FPS Monitor не работает. Для них могу порекомендовать аналог — PlayClaw 6.
Эта утилита предназначена для создания оверлея в играх (т.е. поверх изображения игры будет отображаться выбранная вами информация).
Разумеется, в оверлей можно добавить информацию о FPS, нагрузке на ЦП и видеокарту, температуры, ОЗУ и т.д. Настройка осуществляется в главном окне PlayClaw, см. скриншот ниже 👇.
PlayClaw 6 — настройка оверлея
При запуске любой из игр — настроенный оверлей автоматически отобразится в выбранном углу экрана. Пример на скриншоте ниже… 👇
Статистика по игре
*
Дополнения приветствуются.
Удачи!
👋
Первая публикация: 26.07.2018
Корректировка: 15.01.2020
Полезный софт:
- Видео-Монтаж
Отличное ПО для создания своих первых видеороликов (все действия идут по шагам!).
Видео сделает даже новичок!
- Ускоритель компьютера
Программа для очистки Windows от “мусора” (удаляет временные файлы, ускоряет систему, оптимизирует реестр).
Представьте ситуацию:
Вы играете в любимую игру и всё хорошо, ничего не тормозит. Наслаждаетесь процессом и с удовольствием проводите время с друзьями в онлайне. Но вдруг, разработчик решил сменить движок, чтобы усовершенствовать графику, и игра шагала в ногу со временем. Качаете обновление, с надеждой увидеть прекрасный мир и все изменения, однако замечаете, что игра стала “лагать” — пропускать кадры.
Почему #игровой пк начинает тормозить, и как выявить слабое место в системном блоке — поговорим в этой статье!
Почему игры начали тормозить после обновления?
Как уже говорилось выше — разработчик решил улучшить графику, изменить игровой движок и прочее. Это сказывается на производительности компьютера, причём не всегда в лучшую сторону. Для тех, у кого пк изначально был мощный, разницы в FPS может и не оказаться, а вот те, кто собирал компьютер под ограниченный бюджет — окажутся за бортом.
К примеру, раньше игра потребляла 2 GB видео памяти и ей хватало 2 ядер и 4 потоков с частотой 3 Ghz. А после обновления проект стал требовать от 4 GB VRAM и ОЗУ 8 GB. Процессор тоже потребовался на 4 ядра и 8 потоков, как средний порог входа в игру, а желательно и вовсе 6 ядер на частоте 4 Ггц.
Я сейчас образно говорю, на деле может быть совсем иначе. Просто, чтобы было понятно большинству читателей, так что обойдёмся без тапок.
Иными словами мощности компьютера теперь не хватает, и надо определиться какое #компьютерное железо находится в аутсайдерах.
Как определить “бутылочное горлышко” в компьютере?
Для начала стоит понять, что задействует компьютер во время игр, а затем вычислить слабое место. Не переживайте, благодаря статье вы узнаете на что следует обратить внимание. Сейчас, в основном, #видеокарта это основной упор в компьютерных играх.
Но бывают случаи, когда мощности GPU хватает, а вот #процессор не способен нагрузить карту для отрисовки. В таком случае уже нужно копать глубже, так как и пропускная способность памяти, и её объём тоже могут оказаться слабым местом.
Без программ мониторинга системы не обойтись. Рекомендую FPS monitor или MSI AfterBurner. Обе программы лёгкие, настраиваются за 5 минут. Я использую AfterBurner, так как привык к ней, да и видеокарту настраиваю вручную.
Пошаговый план определения слабого места (бутылочного горлышка)
Пошаговый план выглядит просто:
- Проверка упора в графику.
- Обнаружение загрузки процессора.
- Оперативная память, её количество и скорость, а так же пропускная способность.
- Дисковая подсистема, из-за которой могут быть противные “фризы”.
- Температуры комплектующих.
Как настроить MSI AfterBurner, чтобы увидеть значения я показал в видео ниже. Оно короткое, посмотрите. По желанию можете и на Ютуб канал подписаться, буду благодарен за помощь в развитии!
1. Проверяем загрузку видеокарты. В идеале должно быть 90-100% загрузка графического ускорителя. Однако если ваша GPU слишком слабая, то в любом случае будет 100% нагрузка. В таком случае необходимо снизить разрешения с FullHD то 720p и понаблюдать. Если при таком разрешении карта всё так же полностью загружена, это означает лишь одно — карты не хватает.
Пробуйте разные настройки, убирайте тени, снижайте текстуры. Если изменения в FPS не произошли, значит дело, скорее всего, не в видеокарте.
2. Если ваша видеокарта не загружена по полной, а лишь на 70-80%, причём такой эффект прослеживается в большинстве проектов, стоит обратить внимание на процессор. Возможно именно он выступает слабым звеном. В 2021 году НОРМАЛЬНЫМ соотношением ядер и потоков является 4/8.
Если ваш ЦП на “2 ядра 2 гига игровая видеокарта” (не сдержался :D)…
Если ваш ЦП на 2 ядра и 2/4 потока, то этого крайне мало в нынешних реалиях. У вас может быть 4.5 Ггц по всем ядрам, но их количество будет неспособно “нарезать” задачи для отрисовки видеокарте. В оверлее вы увидите загрузку проца на 95-100%, в то время как видеокарта будет недогружена. Это явный признак слабого процессора или ПСП.
3. ОЗУ. Понятное дело, что её должно быть достаточно. Но сколько это? Разные игры потребляют по-разному. Варзона может и 12 гигов скушать. Золотой серединой игровой индустрии 21 года является 16 GB ОЗУ.
Объём памяти безусловно важен, но не является краеугольным камнем. Частота памяти и её пропускная способность так же влияют на игровой процесс. У вас может быть 16 GB, но установлены одной планкой, соответственно в одноканальном режиме. Single channel отнимает около 15-20% от производительности в играх (зависит от проекта).
⭐⭐⭐⭐⭐Про важность частоты, таймингов и объёма
у меня уже была статья.
А так же тесты XMP профиля против ручного разгона.⭐⭐⭐⭐⭐
Чем выше частота памяти, тем лучше. Золотой серединой является 3200 Mhz CL16 у DDR4. Современные процессоры могут и больше, но не всегда это даёт видимый глазу прирост. Зато отличия от стоковой 2666 Mhz точно будут заметны.
У DDR3 2133 Mhz с таймингами 12 будут отлично отрабатывать. Но в целом, 1866 Мгц cl 12 тоже будет достаточно. Особенно если это Xeon с 4х канальным режимом работы ОЗУ (хотя там разницы между двух каналом не так уж и много на самом деле).
Из-за чего в играх могут быть микро фризы?
У вас могут быть стабильные 60 FPS, однако просадки до 20 кадров будут портить весь процесс игры. Так называемые “дропы” кадров могут быть связаны с чем угодно. Чаще всего такое случается из-за дисковой подсистемы. Старый HDD с низкой скоростью может не успевать подгружать локации. В таком случае SSD диск жизненно необходим!
Нехватка ОЗУ так же на это влияет.
Не забывайте и про температуры, ведь самое главное для стабильной работы компьютера это безопасные градусы. Если ваш процессор во время игры будет перегреваться, ему придётся понизить напряжение и скинуть рабочую частоту. Это называется “тротлинг”. Как вы понимаете, во время тротлинга производительность компьютера падает, что и вызывает просадки FPS.
То же касается и видеокарты, если она перегревается, то работать на всю мощь она, увы, не сможет. Нормальные температуры для GPU около 75-80 градусов (образно говоря). Конечно, чем меньше, тем лучше. У процессора до 80 градусов тоже считается нормой. Однако если в играх 80 градусов на железе, я рекомендую позаботиться об охлаждении комплектующих.
На этом рубрика #полезные советы подошла к концу. По всем вопросам обязательно пишите в комментариях! У меня активные подписчики, так что без помощи не останетесь!
Благодарю за уделённое время, осмелюсь попросить у вас “палец вверх” для статьи, чтобы помочь ей раскрутиться. Спасибо!
⭐⭐⭐⭐⭐5 рабочих способов поднять FPS в играх
⭐⭐⭐⭐⭐Почему на материнской плате слоты для ОЗУ разного цвета?
Ста-ста-статтеринг, или откуда в игре берутся микрофризы и как с ними бороться
Время на прочтение
10 мин
Количество просмотров 39K
Представьте себе: вот вы ждете новую часть вашей любимой игры и, наконец, она выходит. Специально под это дело вы обновили свой ПК: установили новейшие ЦП и ГП, увеличили объем оперативки и даже заменили жесткий диск на SSD. Теперь игра должна запускаться у вас гладко, как шелк, с первого же экрана загрузки и до самого конца.
Вот вы скачиваете себе ранее оплаченный предзаказ. Завершается установка, вы запускаете игру. Все идет хорошо: игра «летает» с частотой кадров 60 FPS. Или, во всяком случае, так говорит вам счетчик кадров в оверлее вашего ГП. Но что-то идет не так. Вы водите мышкой туда-сюда и замечаете, что игра… фризится.
Как это возможно? Какие еще фризы при 60 FPS?
Это может казаться смешным до тех пор, пока не столкнешься с этим сам. Если вы встречались с такими фризами, то наверняка уже успели их возненавидеть.
Это не лаги. Не низкий фреймрейт. Это статтеринг. При высоких FPS и идеальной сверхбыстрой конфигурации.
Что это такое, откуда взялось и есть ли способ от него избавиться? Сейчас разберемся.
Со времен появления первых аркадных автоматов в 70-ых годах видеоигры работают на 60 FPS. Обычно предполагается, что игра должна работать с той же скоростью, что и дисплей. Только после популяризации 3D-игр нам пришлось столкнуться и принять более низкую частоту кадров. Еще в 90-х годах, когда «3D-карты» (которые теперь называют «графическими процессорами») начали заменять программный рендеринг, люди спокойно играли с частотой 20 кадров в секунду, а 35 FPS считалась уже частотой для серьезных соревнований по сети.
Теперь же мы располагаем сверхбыстрыми машинами, которые, конечно же, могут летать на 60 FPS. Тем не менее… похоже, что недовольных производительностью теперь стало больше, чем когда-либо. Как это возможно?
Дело не в том, что игры работают недостаточно быстро. А в том, что они фризятся даже с высокой производительностью.
Если вы пробежитесь по игровым форумам, то, вероятно, встретите в заголовках тем что-то вроде такого:
ПК-геймеры часто жалуются, что игры страдают от статтеринга даже при отсутствии проблем с частотой кадров.
Можно предположить, что это единичные случаи, но такие допущения развеивает статистика поиска в Google:
За последние 5 лет статтеринг стал (относительно) большей проблемой, чем производительность.
(Обратите внимание, что это относительные значения. Дело не в том, что люди ищут информацию о статтеринге чаще, чем о фреймрейте в целом. В то время, как количество поисковых запросов о частоте кадров остается прежним, поисковые запросы о статтеринге появляются все чаще, особенно в последнее время.)
Десятилетие поиска причин статтеринга
Пациент точно жив. Просто часто фризится.
Впервые автор столкнулся с этой проблемой где-то в 2003 году во время работы над Serious Sam 2. Люди стали сообщать о случаях, когда во время тестирования на пустом уровне движения экрана и мыши оказывались не плавными. Это сопровождалось очень специфическим паттерном на графике частоты кадров, который команда разработки назвала «сердцебиением».
Первой мыслью было то, что где-то в коде закралась ошибка, но никто не смог ее найти. Казалось, что проблема появлялась и исчезала случайным образом — при перезапуске игры, перезагрузке компьютера… но стоило изменить какой-либо параметр производительности, и она исчезала. Затем можно было поменять параметр обратно, и все продолжало работать идеально. Проблема-призрак.
Очевидно, проблема была не только в «Сэме». При запуске других игр она возникала точно так же, наводя на мысли, что тут что-то с драйверами. Но появление статтеринга не зависело от производителя вашего графического процессора. Оно имело место даже при разных API (OpenGL, DirectX 9, DirectX 11…). Единственное, что оставалось общим, так это что статтеринг появлялся то тут, то там на некоторых машинах и игровых сценах.
С выпуском новых игр эта проблема продолжала то появляться, то исчезать. Раньше это затрагивало лишь некоторых пользователей, и все ограничивалось просьбами со стороны техподдержки изменить кое-какие параметры производительности — что иногда помогало, а иногда нет, никогда не угадаешь.
Затем внезапно, в один прекрасный зимний день в начале 2013 года, ребята из Croteam обнаружили еще один пример этой проблемы, который на тот момент можно было относительно последовательно воспроизводить — на этот раз на одном из уровней в «Серьезном Сэме 3». Они долго возились с той сценой, пока вдруг не осенило. Все было настолько просто — неудивительно, что целое десятилетие это ускользало от всеобщего внимания.
Изменив всего одну простую опцию в игровом движке, у них получилось решить эту проблему. Однако сразу стало ясно, что на самом деле решение потребует гораздо больше времени и усилий. И не только от конкретной команды, но и от всей игровой экосистемы: разработчиков драйверов ГП, специалистов по сопровождению API, поставщиков ОС — всех.
Что происходило все это время
Вот как это выглядит, когда игра «тормозит» даже при 60 FPS. Вы могли испытать нечто подобное, играя в любую современную игру, и, вероятно, первым делом подумали бы, что игра не оптимизирована. Что ж, давайте пересмотрим эту теорию.
Если игра «слишком медленная», это означает, что в некоторых моментах она не сможет отрендерить один кадр достаточно быстро, и монитору придется снова показать предыдущий кадр. Поэтому, когда мы снимаем видео со скоростью 60 кадров в секунду, оно должно показывать «пропущенные кадры» — когда следующий кадр не был отображен вовремя, отчего один и тот же был показан дважды.
Однако это происходит только тогда, когда вы воспроизводите всю анимацию целиком. Если бы вы перебирали ее покадрово, то никаких разрывов бы не обнаружили.
Как такое возможно?
Давайте рассмотрим это подробнее. Ниже представлено параллельное сравнение идеального плавного видео и видео со статтерингом:
Шесть последовательных кадров с точной синхронизацией. Наверху — правильно расположенные кадры, внизу — кадры со статтерингом.
Здесь можно увидеть две вещи: во-первых, они действительно работают с одинаковой скоростью: всякий раз, когда появляется новый кадр сверху (правильный), тогда же появляется новый кадр и снизу (статтеринг). Во-вторых, по какой-то причине кажется, что они двигаются немного иначе — в середине изображения есть заметный «разрыв», который колеблется между большим и меньшим разделением по времени.
Самые внимательные могут заметить еще одну любопытную деталь: нижнее изображение — якобы более «медленное»… на самом деле идет «впереди» правильного. Странно, не правда ли?
Если мы посмотрим на несколько последовательных кадров и их время, мы можем наблюдать еще кое-что интересное: первые два кадра идеально синхронизированы, но на третьем кадре дерево на «более медленном» видео значительно опережает свой аналог на «правильном» видео (обведено красным). Также можно заметить, что этот кадр явно занял больше времени (обведено желтым).
Подождите, подождите… но если видео «медленнее», а кадр «занял больше времени», то как оно может идти с опережением?
Для понимания дальнейших объяснений сначала необходимо разобраться, как современные игры и другие 3D-приложения вообще выполняют анимацию и рендеринг.
Краткая история синхронизации кадров
Давным-давно, в далекой-далекой галактике… когда разработчики создавали первые видеоигры, обычно они это делали с учетом точной частоты кадров, на которой работал дисплей. В регионах NTSC, где телевизоры работают с частотой 60 Гц, это подразумевает 60 кадров в секунду, а в регионах PAL/SECAM, где телевизоры работают с частотой 50 Гц, — 50 кадров в секунду.
Большинство игр представляли собой очень простые концепции, работающие на фиксированном оборудовании — обычно на аркадной консоли или хорошо известном «домашнем микрокомпьютере», таком как ZX Spectrum, C64, Atari ST, Amstrad CPC 464, Amiga и т. д. Таким образом, создавая и тестируя игры для конкретной машины и определенной частоты кадров, разработчик всегда мог быть на 100% уверен, что фреймрейт никогда никуда не упадет.
Скорости объектов также сохранялись в «кадровых» единицах. Таким образом, вам необходимо было знать не на сколько пикселей в секунду будет перемещаться персонаж, а на сколько пикселей в кадре. Например, в Sonic The Hedgehog для Sega Genesis такая скорость составляет 16 пикселей на кадр. Многие игры даже имели отдельные версии для регионов PAL и NTSC, где анимация рисовалась от руки специально для 50 и 60 FPS, соответственно. По сути, работа с любой другой частотой кадров была просто невозможна.
И поскольку со временем игры стали запускаться на более разномастных устройствах, включая ПК с постоянно расширяемым и обновляемым оборудованием, нельзя было точно знать, на какой частоте кадров будет работать игра. Этот факт усугублялся тем, что сами игры стали более сложными и непредсказуемыми — особенно это заметно в 3D-играх, где могут быть большие различия в сложности сцены, иногда даже определяемые самими игроками. Например, всем же нравится стрелять по штабелям бочек с горючим, тем самым вызывая красочную череду взрывов… и неизбежное падение частоты кадра. Но поскольку это весело, то никто и не против.
Поэтому сложно предсказать, сколько времени потребуется для моделирования и рендеринга одного кадра. (Обратите внимание, что на современных консолях у нас, можно считать, фиксированное оборудование, но сами игры при этом все равно довольно непредсказуемы и сложны.)
Если вы не можете быть уверены, с какой частотой кадров будет работать игра, вам необходимо измерить текущую частоту кадров и постоянно адаптировать физику игры и скорость анимации под нее. Если один кадр занимает 1/60 секунды (16,67 мс), а ваш персонаж бежит со скоростью 10 м/с, то он перемещается на 1/6 метра в каждом кадре. Но если кадр вдруг начнет занимать 1/30 секунды (33,33 мс), то вы должны перемещать персонажа уже на 1/3 метра за кадр (в два раза «быстрее»), чтобы он продолжал двигаться с той же видимой скоростью.
Как это устроить? Как правило, игра замеряет время в начале соседних кадров и вычисляет разницу. Это довольно простой метод, но он работает очень хорошо.
Вернее, раньше работал очень хорошо. Еще в 90-х, когда 35 FPS считалась ого-го какой скоростью, люди были им более чем довольны. Но в то время видеокарты не были столь значительной частью ПК, и контроль надо всем происходящим на экране имел центральный процессор. Если у вас не было 3D-ускорителя, он даже сам рисовал объекты. Таким образом, он точно знал, когда они попадут на экран.
Ситуация на сегодняшний день
Со временем стали появляться все более сложные графические процессоры, и они неизбежно становились все более и более «асинхронными». Это означает, что когда ЦП дает команду ГП отрисовать что-то на экране, ГП просто сохраняет эту команду в буфере, чтобы ЦП мог продолжать свои дела, пока ГП выполняет рендеринг. В конечном итоге это приводит к ситуации, когда ЦП сообщает графическому процессору, когда наступает конец кадра, а графический процессор, сохраняя это среди своих данных, на самом деле не считает это чем-то приоритетным — ведь он все еще обрабатывает некоторые из ранее выданных команд. Он покажет кадр на экране только тогда, когда выполнит все, чем его загрузили до этого.
Итак, когда игра пытается вычислить время, вычитая временные метки в начале двух последовательных кадров, релевантность этого, откровенно говоря… весьма сомнительна. Поэтому вернемся к нашему примеру. Там у нас были такие кадры:
Шесть последовательных кадров с точной синхронизацией. Верхний ряд — правильный, нижний — с эффектом статтеринга.
В первых двух кадрах время кадра составляет 16,67 мс (или 1/60 секунды), и камера перемещается на одинаковую величину в верхнем и нижнем случаях, поэтому деревья синхронизированы. В третьем кадре (внизу, со статтерингом) игра увидела, что время кадра составляет 24,8 мс (то есть, больше 1/60 секунды) и оттого думает, что частота кадров упала, и бросается нагонять пропущенное… только для того, чтобы обнаружить, что на следующем кадре время составляет всего 10,7 мс, отчего камера замедляется, и теперь деревья снова более или менее синхронизированы.
Что же происходит? Измеряемое игрой время кадра колеблется из-за различных факторов — особенно в загруженной многозадачной системе, такой как ПК. Поэтому в некоторые моменты времени игра полагает, что частота упала с 60 FPS, и генерирует кадры анимации, рассчитанные на более низкую частоту кадров. Но из-за асинхронного характера работы ГП она всегда так или иначе возвращается к тем же 60 кадрам в секунду.
Это и есть статтеринг — анимация, сгенерированная для переменной частоты кадров (сердцебиения), отображающаяся с фактической правильной фиксированной частотой кадров.
Так что по существу можно считать, что никакой проблемы нет — все идет гладко, просто игра этого не знает.
Это подводит нас к тому, о чем мы говорили в начале статьи. Когда мы, наконец, выяснили причину проблемы (хотя мы знаем, что это иллюзия проблемы — ведь на самом деле проблемы нет, не так ли?), мы можем применить следующую волшебную пилюлю.
Что это за пилюля? В Serious Engine она обозначается как sim_fSyncRate = 60. Проще говоря, это означает вот что: «полностью игнорировать все эти махинации с синхронизацией и делать вид, что мы всегда измеряем стабильные 60 кадров в секунду». И это заставляет все работать гладко — только потому, что с самого начала все работало гладко! Единственная причина, по которой появлялся статтеринг, — это неправильное время, используемое для анимации.
И что же, на этом все?
Значит, решение настолько просто?
К сожалению, нет. Это было просто только на тестах. Если бы мы прекратили измерять частоту кадров в реальных условиях и просто предположили, что она всегда равна 60 FPS, тогда, когда она упадет ниже 60 — а на ПК она рано или поздно упадет по какой бы то ни было причине: работа программ в фоновом режиме, сохранение энергии или защита от перегрева, кто знает, — тогда все замедлится.
Итак, если мы измеряем время кадра, происходит статтеринг, а если нет, в какой-то момент все может замедлиться. И что тогда?
Реальным решением было бы измерение не времени начала/окончания рендеринга кадра, а времени, когда изображение показывается на экране.
Но как игра может узнать, когда кадр действительно отображается на экране?
Да никак: в настоящий момент этого сделать невозможно.
Странно, но факт. Можно было бы ожидать, что это будет базовой функцией каждого графического API. Но нет: они претерпели изменения во всех других аспектах, кроме этого. Нет способа узнать наверняка, когда кадр действительно отобразится на экране. Можно выяснить, когда закончился рендеринг. Но это не то же, что время отображения на экране.
Что теперь?
Ну, все не так уж и плохо. Много кто активно работает над реализацией поддержки правильной синхронизации кадров для разных API. Vulkan API уже имеет расширение под названием VK_GOOGLE_display_timing, которое зарекомендовало себя в реализации этой концепции, но оно доступно только для ограниченного числа устройств.
Ведется работа по предоставлению похожих и более лучших решений, хотелось бы верить, что уже во всех основных графических API. Когда? Сложно сказать, ведь проблема глубоко врезается в различные подсистемы ОС.
Тем не менее, мы надеемся, что вскоре это станет доступным для более широкой общественности.
Различные предостережения и другие детали
Будем считать, что это конец основного текста. Разделы ниже представляют собой «бонусные функции», в основном независимые друг от друга и от описанного выше.
«Композитор»
Это что, эффект матового стекла? Ага, так вот почему у нас обязательно должен быть композитор. Довольно важно, не правда ли?
Во всем этом за кулисами задействована концепция под названием Compositing Window Manager, также известная как композитор. Это система, которая теперь присутствует в каждой ОС и позволяет окнам быть прозрачными, иметь размытый фон, тени и т. д. Композиторы могут пойти и дальше — и показывать окна ваших программ в 3D. Для этого композитор берет на себя управление самой последней частью кадра и решает, что с ним делать, непосредственно перед тем, как он попадает на монитор.
В некоторых ОС композитор можно отключить в полноэкранном режиме. Но это не всегда возможно, и даже в таких случаях — разве не можем мы запустить игру в оконном режиме?
Управление питанием и температурой VS сложность рендеринга
Мы также должны принять во внимание тот факт, что современные ЦП и ГП не работают с фиксированной частотой, но у обоих есть системы, которые регулируют их скорость вверх и вниз в зависимости от нагрузки и текущей температуры. Таким образом, игра не может просто предположить, что они будут иметь одинаковую скорость от кадра к кадру. С другой стороны, операционная система и драйверы не могут ожидать, что игра будет выполнять одинаковый объем работы в каждом кадре. Сложные системы связи между двумя сторонами должны быть спроектированы таким образом, чтобы все это принималось во внимание.
А не могли бы мы просто…
Не могли бы. 🙂 Обычно измерение времени ГП предлагается как альтернатива времени отображения. Но при этом не учитывается наличие композитора и тот факт, что ни один из таймеров рендеринга ГП по факту не синхронизируется напрямую с обновлением дисплея. Для идеальной анимации нам определенно нужно точно знать время, когда изображение было выведено на экран, а не когда оно закончило рендеринг.
Привет всем гостям и пользователям сайта. Сегодня я хотел бы рассказать о некоторых причинах лагов в компьютерных играх, и о том – как убрать лаги в играх.
Не секрет, что все мы любим играть в компьютерные игры. Кому то нравятся онлайн шутеры, кому то квесты, кому то гонки… Игры помогают снять напряжение после тяжелого дня, поднять настроение, весело провести время, забыть о плохих моментах дня. В общем все мы любим провести вечерком часок другой за любимой компьютерной игрой. Но иногда бывает так, что игры начинают лагать, тормозить, глючить, очень медленно работать. И приятное время препровождения превращается в мучение. Как же бороться с такой проблемой? Как ускорить работу игр? Как убрать лаги в играх?
Вот перечень советов, помогающих решить подобные проблемы:
1) Пыль. Очень часто бывает, что игры начинают лагать и тормозить из за сильного перегрева видеокарты и процессора, перегрев как правило вызван сильным запылением. Проверьте свой компьютер, если он сильно запылен – его стоит почистить, это может помочь устранить лаги, тормоза и подвисания в играх.
2) Вирусы. Вирусы так же могут являться причиной тормозов в играх. Ведь во время работы вирус занимает определенную част оперативной памятикомпьютера из за этого не хватает памяти для обработки процессов игры, и игра начинает тормозить, лагать, глючить. Для решения проблемы вирусов нужно установить хороший и надежный антивирус и полностью просканироватькомпьютер. Если антивирус уже установлен, то обязательно обновить его до последней версии.
3) Программы работающие в фоне. Часто бывает, что пользователь не особо разбирается в принципе работы компьютера, запускает 10-20 программ, а потом еще и запускает игру. Естественно игра будет тормозить, лагать и глючить, т.к. у компьютера просто будет не хватать оперативной памяти для обработки всех процессов. поэтому прежде чем запускать игру останоите работу программ, которые “жрут” много памяти (Photoshop, Coreldraw, AutoCAD, Adobe Flash Professional и др).
4) Забитый интернет канал. Любители поиграть в онлайн игры иногда даже не подозревают, что скачивания из интернета (скачивание с торрента к примеру) существенно нагружает интернет канал — это может привести к лагам в онлайн играх. Так чо перед тем как запустить онлайн игру желательно приостановить все текущие скачивания.
5) Настройки графики. Как бы просто это не звучало, но часто причиной лагов в игре являются высокие настройки графики, которые компьютер просто “не тянет”. Возможно Ваш комьютер просто слишком стар, что бы “тянуть требовательную игру”. Поэтому всегда изучаете системные требования игры перед тем, как скачивать её с торрента
Так же для того, чтобы ускорить работу игр и оптимизировать работу оперативной системы можно сделать дефрагментацию дисков (пуск/ все программы/ стандартные/ служебные/ дефрагментация). Еще можно провести очистку дисков от “мусорных” и ненужных файлов (пуск/ все программы/ стандартные/ служебные/ очистка диска).
Оптимизация работы системы может существенно помочь и работе игр, существует множество программ для ускорения и оптимизации работы системы, это такие программы, как: Toolwiz Care, Auslogics BoostSpeed, CCleaner и другие…
Еще одной довольно распространенной причиной лагов в играх является высыхание термопасты между процессором и кулером. Паста высыхает, и из за этого процессор начинает перегреваться. Для решения этой проблемы нужно заменить термопасту, для этого лучше обратиться к специалисту, хотя продвинутые и опытные пользователи как правило делают это сами.
На этом я пожалуй закончу свою статью, теперь Вы знаете, как убрать лаги в играх. Надеюсь моя статья Вам понравилась. Удачи!
Если игра тормозит, причин может быть много, однако все они сводятся к двум основным типам. Условно их можно разделить на железные и программные. В этой статье мы разберем частые случаи, когда игры тормозят и расскажем, как это исправить. Если у вас компьютер не первой свежести, рекомендуем ознакомиться со статьей «Как ускорить слабый или старый ПК для игр». А для решения проблем с сетевыми играми — «Что делать, если лагают сетевые игры».
Железные проблемы
Как понятно из названия, проблемы железного характера связаны с аппаратной начинкой компьютера или ноутбука. В первую очередь мы подразумеваем несоответствие минимальным системным требованиям, а уж затем поломки и проблемы самого оборудования.
Что делать, если ПК слишком слабый
Если компьютер слишком старый или слабый, то никакие настройки и «волшебные» программы для оптимизации не помогут. Однако не стоит преждевременно списывать ПК в утиль. Для начала нужно узнать конфигурацию ПК и понять, пригодна ли она для игр. Можно сравнить вашу конфигурацию с системными требованиями современных игр или посмотреть тесты вашего процессора и видеокарты на YouTube. В нашем гайде подробно написано, как узнать свое железо, а через сервис userbenchmark.com можно прикинуть примерную производительность.
Если ваш ПК не удовлетворяет современным требованиям, универсальный совет здесь один — купите более старший процессор в линейке (например, Core i5 вместо Core i3), замените видеокарту на что-то посвежее (вроде RX 470 или GTX 1060 на 3 гигабайта) и добавьте оперативной памяти хотя бы до 8 гигабайт. Минимально стоит рассматривать четырехъядерный процессор Intel с технологией HT не старее 4-го поколения или четырехъядерные AMD Ryzen. Если у вас платформа AM3+, можно приобрести легендарный FX-8350, который все еще способен немного оживить ваш ПК.
Подробнее о том, как выжать из слабого ПК все, мы рассказывали в отдельном гайде. Рекомендуем ознакомиться, даже если у вас современный мощный компьютер. Некоторые советы из списка будут полезны всем.
Что делать, если игры тормозят на мощном ПК
Совсем другое дело, если компьютер мощный, но игры все равно тормозят. В этом случае проблема может быть непосредственно в работе оборудования. Для начала установите мониторинг MSI Afterburner, чтобы можно было отследить рабочие параметры железа. Подробнее об этом написано в нашем гайде. После этого нужно посмотреть на температуры, процент загрузки комплектующих и рабочие частоты.
Одна из частых причин — перегрев. Если процессор перегревается, он начинает троттлить (то есть ограничивать производительность) для снижения нагрева. В таком случае могут наблюдаться просадки фреймрейта. Причем для перегрева характерно, когда производительность падает через некоторое время после запуска игры.
Причина может быть в чрезмерном разгоне, слабой системе охлаждения, высохшей термопасте или пыли, которая забила радиатор охлаждения. Кроме того, у вашего корпуса может быть плохая продуваемость. Подробнее о перегреве процессора мы писали в отдельной статье.
Перегрев может коснуться не только процессора, но и видеокарты. Результат будет такой же, однако исправить проблемы с охлаждением видеокарты не так просто. Во-первых, снять саму систему охлаждение сложнее. Во-вторых, в случае замены придется искать совместимый комплект.
Нельзя исключать и проблемы с другими комплектующими. Также проблемы в играх могут вызывать и другие компоненты системы. Это происходит реже, так как обычно неисправности блока питания или материнской платы просто не дадут запустить компьютер.
Проблемы с накопителем. Одна из распространенных причин — фрагментированный жесткий диск. В отличие от SSD стандартные жесткие диски нужно регулярно дефрагментировать. Кликните правой кнопкой мыши на жестком диске в проводнике и выберите «Свойства». Перейдите на вкладку «Сервис», затем в раздел «Оптимизация и дефрагментация диска». Также можно воспользоваться сторонней программой, например, Disk Defrag.
Файл подкачки и оперативная память. Если на ПК не хватает оперативной памяти, то игры могут подтормаживать. Это происходит потому, что система обращается к файлу подкачки, который расположен на более медленном, чем ОЗУ, накопителе. Именно из-за этого и происходят просадки производительности. Решение тут простое — увеличить объем оперативной памяти. Также можно попробовать увеличить объем файла подкачки и перенести его на SSD. В поиске Windows введите «Настройка представления и производительности системы». Вам нужна вкладка «Дополнительно», далее «Виртуальная память». Нажмите кнопку «Изменить».
Медленная оперативная память. Производительность памяти довольно тяжело определить на глаз. Такие важные характеристики, как частота работы и тайминги не лежат на поверхности. Чтобы узнать, что за память у вас установлена, скачайте программу CPU-Z. Для игрового ПК память обязательно должна работать в двухканальном режиме (то есть должно быть установлено минимум два модуля). Кроме того, нужно проверить тайминги и частоту работы (параметр DRAM Frequency нужно умножить на 2). Для DDR4 частоты менее 2400 МГц и тайминги выше CL19 можно считать плохими (однако для частот выше 3600 МГц это нормально).
Программные проблемы
Под программными проблемами мы понимаем неполадки операционной системы, неправильно выставленные настройки и другие подобные моменты. Некоторые из них мы описывали в статье «Как настроить Windows 10 для игр», рекомендуем ознакомиться. Если у вас видеокарта NVIDIA, также изучите наш гайд по настройке видеокарты.
Устаревшие драйверы, обновления программ и системы
Если драйверы не обновлялись очень давно, то неудивительно, что современные игры могут испытывать проблемы при запуске. Производители видеокарт регулярно выпускают драйверы, оптимизированные под новые игры. Если игры тормозят, в первую очередь нужно проверить дайверы.
Также можно использовать специальную платную утилиту Driver Booster, которая найдет и обновит драйверы автоматически. Вручную это сложно сделать, так как нужно проверить каждое устройство. Программа это делает самостоятельно. Даже если вы не собираетесь покупать лицензию, воспользоваться ей стоит хотя бы для поиска устаревших драйверов на вашей системе. Скачать обновления можно и вручную.
Вирусы, майнеры или другие процессы нагружают систему
Если какой-либо вредоносный процесс сильно нагружает систему, то о плавном геймплее можно забыть. Зайдите в «Диспетчер задач» (Ctrl + Alt + Del) и посмотрите, что нагружает систему. Проверяйте каждый подозрительный процесс, вбивая его название в поисковике. Также можно кликнуть на процессе правой кнопкой мыши и выбрать «Поиск в интернете». Обязательно проверьте систему антивирусом. Можно скачать бесплатные программы Dr. Web CureIt, Kaspersky Virus Removal Tool и Malwarebytes AdwCleaner.
Также стоит почистить автозагрузку. Перейдите на одноименную вкладку в «Диспетчере задач» и выключите все ненужные программы. Когда их слишком много, то оперативная память и ресурсы процессора расходуются впустую.
Почему нужно отключать запись игр в фоновом режиме
Запись геймплея программными средствами (то есть без платы захвата) может существенно снижать производительность, так как расходует ресурсы ПК. Если вы запускаете запись вручную через сторонние программы, то это очевидно. Но запись геймплея можно осуществлять и средствами системы или программного обеспечения видеокарты.
В Windows перейдите в параметры через сочетание Win + I, далее «Игры». Если у вас слабый ПК, отключите возможность записи совсем. То же самое касается и драйверов видеокарты. В GeForce Experience отключите захват лучших моментов в настройках.
Как выставить режим энергосбережения на максимальную производительность
Настройки планов электропитания не должны существенно влиять на производительность. Однако на десктопном компьютере сберегать энергию и ограничивать производительность не имеет смысла.
Зайдите в параметры Windows через сочетание Win + I и перейдите в пункт «Система». Далее выберите «Питание и спящий режим». В правой части экрана нажмите на ссылку «Дополнительные параметры питания». Затем выберите режим «Высокая производительность». Можно выбрать режим максимальной производительности. О том, как это сделать читайте в нашем материале «Как настроить Windows 10 для игр».
Как понять, что у игры плохая оптимизация
Никогда нельзя исключать возможность, что игра тормозит и фризит сама по себе ввиду плохой оптимизации. В этом случае мало что можно поделать. Особенно это критично на не самом мощном железе, так как RTX 3090 и Ryzen 5950X едва ли будут страдать от тормозов.
Чтобы разобраться нужно установить MSI Afterburner для мониторинга основных параметров. Подробную инструкцию ищите в нашем гайде. После этого нужно посмотреть на температуры, процент загрузки комплектующих и рабочие частоты. Если частоты, а также загрузка видеокарты и процессора невысокие, при этом FPS нестабильный и не достигает нужных значений (например, 60 кадров в секунду, как и частота обновления вашего монитора), это непорядок. Подробнее о том, какая должна быть загрузка комплектующих читайте в гайде «Загрузка видеокарты в играх».
Зачем нужно менять игровой API. Что лучше DirectX 12, DirectX 11 или Vulkan
В некоторых случаях стоит перейти с DirectX 12 на DirectX 11 или даже на Vulkan. Если игра плохо идет на одном API, то все может поменяться. Использовать Vulkan чаще рекомендуют обладателям видеокарт AMD, DX11 стоит включать для старых видеокарт, а DX12 — чтобы немного снизить нагрузку на процессор. Однако универсального совета нет, нужно смотреть, как меняется производительность именно на вашем железе.
Оптимизация графики и режим ультранизких настроек
Некоторые графические настройки могут существенно снижать производительность, при этом не делая картинку существенно лучше. Мы не берем случаи, когда компьютер просто не вывозит высокие или средние настройки графики. Но иногда методом подбора можно снизить одну или две настройки и поднять производительность в разы. Чаще всего это качество теней и дальность прорисовки. Также существенно влияет на производительность сглаживание.
Есть игры, в которых одними штатными настройками не обойтись. К примеру, Nier Automata вышла на ПК со множеством проблем, которые разработчики частично исправили патчем только в июле 2021 года (спустя четыре года после релиза). До этого момента нормально поиграть можно было только при помощи целого ряда модификаций, исправляющих проблемы.
Кроме того, если ваш ПК совсем не вытягивает игру, может помочь режим ультранизких настроек. Как правило, игры не позволяют понизить настройки «в ноль» штатными средствами, поэтому придется вручную править конфигурационные файлы или устанавливать модификации. Такой мод есть, например, для Fallout 4. Модификация снижает качество теней, убирает сглаживание и сокращает дальность прорисовки. Картинка, конечно, становится не очень приятной, но зато игра пойдет даже на слабой системе.
Частые вопросы
Что делать, если тормозят старые игры? Старые игры могут тормозить из-за плохой совместимости с новым железом и операционной системой. В этом случае нужно искать решение проблем с конкретной игрой.
Игры тормозят сразу после запуска. Скорее всего, железо компьютера не соответствует минимальным системным требованиям. Если же ПК мощный, может быть и другая причина. Об этом мы подробнее писали выше по тексту.
Игры тормозят спустя некоторое время. Скорее всего, перегревается процессор или видеокарта. В результате частоты сбрасываются, а производительность падает.
Почему игры фризят? Если с тормозами и низким FPS разобраться проще, то фризы штука более коварная. Микрофризы и стартеры могут случаться даже на мощном железе, когда игра установлена на SSD. Причины могут быть самые разные: нехватка оперативной или видеопамяти, плохая оптимизация игры, неоптимальные настройки оперативной памяти, проблемы с накопителем.
Также фризы могут случаться и из-за процессора. Например, Ryzen до Zen 3 могут фризить чаще, чем аналогичные процессоры Intel. Вычислить фризы и статтеры можно по показателям фреймтайма. Также стоит обратить внимание на показатели 1% и 0,1%, которые еще принято называть редкими и очень редкими событиями. В отличие от минимального FPS эти показатели более приближены к реальному положению дел. Если значения 1% и 0,1% слишком низкие, играть будет некомфортно. При этом средний FPS может быть довольно высоким.
Почему на мощном ноутбуке тормозят игры? Скорее всего, дело в перегреве. Мощное железо требует качественного охлаждения, которое есть не на всех моделях. Кроме того, убедитесь, что на ноутбуке установлены все обновления (включая BIOS) и выбран режим высокой производительности. Учтите также, что игровой ноутбук выдает максимальную производительность только при подключении к электросети комплектным полноценным блоком питания. Кроме того, может быть задействована встроенная видеокарта. Если игра задействует не дискретную видеокарту, а встроенное в процессор видеоядро, производительность будет существенно ниже.
Почему тормозят игры на движке Unity или Unreal? Сам факт того, что игра сделана на определенном движке не означает, что она обязательно будет тормозить. Дело в том, что игры на готовом движке часто делают небольшой командой или вовсе в одиночку. Такие проекты часто страдают от плохой оптимизации, что плохо сказывается на репутации движка. Однако игровые движки все же имеют свои особенности, которые стоит учитывать. И если проблемы встречаются в одной игре, то есть вероятность, что и в другой игре на том же движке они проявятся.
- Как настроить видеокарту NVIDIA для игр
- Как настроить мониторинг MSI Afterburner в играх: узнаем температуру и загрузку процессора и видеокарты
- Что делать, если лагают сетевые игры. Как снизить инпут лаг и задержки сети