Как SCSKiller пытается избавить ПК-игры от статтеров из-за компиляции шейдеров
- Бесплатный SCSKiller заранее компилирует шейдеры в кеш видеодрайвера, а неподдерживаемые игры может анализировать во время примерно 10 минут игры.
- В Silent Hill f число статтеров компиляции за 10 минут снизилось с 25 до нуля; рывки также почти исчезли в Elden Ring и The Witcher 3.
- Приложение не устраняет все подтормаживания: в Hogwarts Legacy осталось шесть серьёзных рывков за 10 минут, а запуск с античитом может привести к бану.
Почему это важно: Шейдерные статтеры могут нарушать погружение и настолько отвлекать, что игра кажется неиграбельной.

Mixetto/Getty Images
Трудно передать, насколько я ненавижу статтеры из-за шейдеров — даже в лучших играх для ПК. Я, пожалуй, главный арахнофоб в мире и терпеть не могу грибы, но скорее соглашусь, чтобы дрессированный тарантул подал мне шиитаке во фритюре, чем буду мучиться с печально известной своими подтормаживаниями Star Wars Jedi: Survivor. По крайней мере, так было, пока я не скачал Shader Compilation Stutter Killer (SCSKiller).
Это бесплатное приложение обещает значительно сократить или даже полностью устранить статтеры от компиляции шейдеров в современных играх на ПК. Но способна ли эта программа с открытым исходным кодом действительно выполнить обещание? Я протестировал её на нескольких играх, печально известных своими подтормаживаниями, и в лучшие моменты SCSKiller просто гениален. Вы помешаны на кадровой частоте? Вам нужно скачать это приложение как можно скорее — и вот почему.
Почему в играх на ПК возникают статтеры из-за шейдеров?

DC Studio/Shutterstock
Прежде чем объяснять, чем хорош SCSKiller, разберёмся, что вообще такое шейдерные статтеры. Если коротко, это кратковременная визуальная запинка, которую неподготовленный глаз принимает за падение частоты кадров. Почему это проблема именно ПК, а не консолей? Потому что разработка для ПК не привязана к фиксированному железу, тогда как студии могут заранее, ещё до релиза, скомпилировать шейдеры под точные характеристики PS5 или Xbox Series X.
Хотя просадки кадров и шейдерные статтеры могут происходить одновременно (вот как повысить FPS для более комфортной игры), на самом деле это разные проблемы. Падение кадровой частоты обычно вызвано аппаратными узкими местами, когда GPU или CPU не успевает достаточно быстро обработать определённые визуальные элементы или физические расчёты.
С шейдерными статтерами всё иначе. Шейдеры — это небольшие программы, которые указывают видеокарте, как отрисовывать различные внутриигровые эффекты: тени, отражения или освещение. Во многих современных играх на ПК — особенно на Unreal Engine 5 — статтеры возникают потому, что конвейеру рендеринга приходится создавать эффекты в реальном времени. Пока следующий кадр ждёт компиляции шейдера, легко может случиться кратковременный скачок времени кадра. Стоит один раз их заметить — и внутриигровые подтормаживания начинают так отвлекать, что полностью разрушают погружение.
С обычными статтерами иногда во многом можно справиться, если у вас есть VRR-дисплей. Экраны с переменной частотой обновления (например, модели с NVIDIA G-Sync и AMD FreeSync) динамически подстраивают частоту обновления панели под количество кадров, которое в данный момент выдаёт видеокарта, заметно сглаживая картинку. VRR-дисплеи также помогают избавиться от разрывов изображения в играх на ПК и консолях.
Статтеры компиляции, связанные с CPU, не исправить ни технологиями экрана, ни видеокартой. В таких случаях подтормаживание может длиться пару секунд, роняя частоту до 0 fps и полностью ломая игровой процесс. Это происходит потому, что ваш ПК видит конкретный эффект впервые. Именно поэтому статтеры компиляции сильнее всего проявляются при первом входе в новые локации.
Избавляет ли SCSKiller от шейдерных статтеров?

Dave Meikleham для Engadget
SCSKiller способен значительно уменьшить подтормаживания в протестированных мною играх, но устранить все статтеры он не может. Это приложение создано специально для борьбы со статтерами компиляции шейдеров. И с этой задачей оно справляется блестяще.
Я выбрал на своём компьютере несколько игр, печально известных статтерами компиляции. Во всех случаях, кроме одного, SCSKiller расправился с этим ужасным изъяном ПК-гейминга. После установки инструмент автоматически считывает ваши игровые библиотеки и сразу отмечает тайтлы, которым он поможет больше всего, в списке «Рекомендуется скомпилировать».
Заранее скомпилировав шейдеры в кеш драйвера видеокарты перед запуском каждой игры, я обнаружил, что статтеры компиляции более-менее исчезли в Silent Hill f, Silent Hill Townfall, Elden Ring и The Witcher 3: Wild Hunt — Remastered. До знакомства с SSCKiller я считал и Townfall, и Wild Hunt неиграбельными из-за статтеров компиляции шейдеров. Для понимания: я крайне чувствителен к скачкам времени кадра. После того как приложение предварительно скомпилировало шейдеры для обеих игр, губительные рывки, которые я наблюдал раньше, исчезли. В перечисленных играх SSCKiller полностью меняет правила игры.
Результаты в Silent Hill f оказались не менее впечатляющими. До предварительной компиляции шейдеров японского хоррора расширенная статистика SSCKiller сообщила, что моя предыдущая 10-минутная сессия была испорчена ровно 25 статтерами компиляции (максимальный — 246 мс) и 67 шейдерными рывками, а показатель 1% low составил всего 3 fps. После использования приложения статтеры компиляции сократились до нуля, а мой монитор с G-Sync делал мелкие рывки практически незаметными. Как я и сказал, это полностью меняет правила игры.
Плюсы и минусы SCSKiller

Dave Meikleham для Engadget/Portkey Games
Плюсов много, и они очевидны; минусов сравнительно мало. SSCKiller бесплатен, интуитивно понятен, предлагает удобную статистику до и после компиляции, а упомянутая функция мгновенного считывания библиотек избавляет от необходимости копаться в списках конкретных игр. Когда SSCKiller в ударе, он полностью устраняет этот отвратительный дефект.
Приложение подкупающе честно говорит о своих текущих ограничениях. На момент написания этих строк большинство игр, установленных на моём самосборном ПК, отображаются во встроенном фильтре как неподдерживаемые. Удобная кнопка «Почему?» объясняет это ограничение. Сейчас многие игры выдают ошибку «Пока не поддерживается» с пояснением «шейдеры сжаты или упакованы: нужен модуль чтения движка».
К счастью, это довольно легко обойти с помощью встроенной функции записи. Просто выберите игру и включите переключатель «Записывать, пока я играю» в правом нижнем углу приложения — и SCSKiller проанализирует конвейер рендеринга и заранее подготовит шейдеры примерно после 10 минут игры. Но будьте осторожны: использование приложения может привести к бану в играх с античит-системами, поэтому при работе с этим инструментом запускайте Elden Ring в офлайн-режиме.
Циклы предварительной компиляции тоже могут занимать немало времени. Хотя большинство настроенных мною игр обрабатывались всего за несколько минут, даже моему мощному AMD Ryzen 7 9800×3D понадобилось 17 минут, чтобы скомпилировать 291 688 шейдеров Hogwarts Legacy.
Кстати, Hogwarts SSCKiller исправить не может. Даже на моём компьютере с NVIDIA RTX 5090 волшебный открытый мир от Portkey Games всегда был ужасно оптимизированным портом. Несмотря на все старания приложения, за 10-минутный забег игра выдала шесть серьёзных рывков компиляции. В играх, страдающих от статтеров при перемещении по миру и скачков нагрузки на CPU (как Hogwarts и ремейк Dead Space 2023 года), подтормаживания останутся заметными, если у вас нет VRR-дисплея. Но для бесплатной программы SSCKiller чертовски хорошо справляется со сглаживанием статтеров компиляции.
Полный текст статьи читайте на GDGT.ru
