Анизотропная фильтрация не так проста как вам казалось

Решил оформить историю в виде отдельного поста, после того как написал достаточно развернутый ответ на пост одного из пользователей "Фикс нагрузки в меню Cyberpunk 2077".
Возможно это не поможет конкретно в случае с киберпанком, но сможет пригодится вам в будущем.

Итак, история про анизотропную фильтрацию, которая приключилась со мной на днях и научила кое-чему.

Проблема была такая: В Assassin's Creed Unity даже на максимальных настройках очень мутные текстуры мира, если они находятся даже под небольшим углом.

Максимальные настройки Assasin's Creed Unity
Максимальные настройки Assasin's Creed Unity

Решение казалось простым: как обычно форсировал анизотропную фильтрацию 16x через панель управления Nvidia, т.к. обычно это добавляет текстурам объектов находящихся под углом чёткости, зато на производительность никак не влияет, и вот какой вышел результат:

Те же изображения проулка, с ползунком для сравнения – см. например качество текстур плитки на полу.

Разница нагрузки на видеокарту в игровом процессе 1% (было 59% стало 60%).
Зато какая большая разница в картинке! Как будто настройки текстур подняли с низких на высокие – это хорошо, то что и нужно было.

Но гораздо позже я заметил странную вещь. По сравнению с тихой работой в игровом процессе, комп готовится на взлёт в любом меню игры – в любых менюшках игры GPU молотит нагрузку прямо по полной, на 90-100%. Соответствующий нагрев и шум прилагается.
А ведь в меню игры заходишь часто и порой на продолжительные моменты, например прочитать базу данных по достопримечательностям, персонам, посмотреть карту местности, обновить навыки, и так далее.

Весь вечер искал в чём дело, откуда такая нагрузка? Докатился даже до того, что настроил с помощью RivaTuner ограничение кол-ва кадров с 60 до 30 по горячей кнопке, чтобы хоть как-то держать в узде нагрузку и шум на пустом месте, пока читаю или смотрю что-то в менюшках игры.
Еще удивлялся – как тогда игра работала в менюшках на выходе в 2014 году на железе тех лет, если даже в 2022-м на RTX 3060 там в 1080p почти под 100% колеблющаяся нагрузка? Что получается, на более слабых видеокартах того времени наблюдалось слайд-шоу в меню?

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

А потом я вспомнил, что ранее форсировал анизотропную фильтрацию, и решил ради теста её отключить.

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

В менюшках AC Unity очень много геометрических фигур, плоскости которых располагаются под углом.
И несмотря на то что выглядят эти фигуры непримечательно, и что обычно на ПК, в отличии от консолей, анизотропная фильтрация даётся "бесплатно" по производительности, из-за сравнительно большой ширины шины GPU, в данном случае кол-во объектов ожидающих выборки в меню игры оказалось столь велико, и настройка фильтрации столь высока (16-кратная), что нагрузка на видеокарту в меню вырастает примерно в два раза.

Те же изображения из меню, с ползунком для сравнения – разницы в качестве никакой, но см. нагрузку в верхнем правом углу.

В итоге, протестировав разные варианты форсирования анизотропной фильтрации для AC Unity, я нашёл компромисс, который и улучшает картинку, и при этом почти не сказывается на нагрузке в меню – это AF 4x.

В игровом процессе это всё тот же 1% разницы нагрузки, при достаточно большой разнице в четкости – те же изображения проулка что выше, с ползунком для сравнения.

Нагрузка в меню от 4-x кратной анизотропной фильтрации текстур уменьшилась до вменяемых 12% доп. нагрузки – сравнение в меню.

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


Спасибо за внимание, если вам показалось полезным – можете оценить запись вашим боярским лайком.

207207
142 комментария

Пука гейминг

12

Ну да, тут мы можем, если захотим, одной простой опцией, например, улучшить качество текстур.

131

Как дела у CP2077 на PS4 или как там Gotham Knight поживает?

34

...для пытливых умов

1

Может проблема в том, что через драйвер анизотропия анизотропирует всё подряд? Лучше погугли, в мб конфиге можно включить нормально.

11

Анизо чтооооо нааахой. Вырубал всегда. 900p, FXAA и 60fps обеспечены

Ебал эти RTX - дайте мне Core2Duo и запущу на нем хоть спайдермена

Да, я сошедший с ума от нищеты некрофил-мехромант

7

Кавоо, я еще на 8500гт анитрипку не выключал, а тут на современных вк в 4 ставить?

9