Драйверы видеокарт: на что влияют их настройки. Анизотропная оптимизация


для чего нужна, на что влияет, практическое использование :: SYL.ru

Технологии отображения 3D-объектов на экране мониторов персональных компьютеров развиваются вместе с выпуском современных графических адаптеров. Получение идеальной картинки в трёхмерных приложениях, максимально приближённой к реальному видео, является основной задачей разработчиков железа и главной целью для ценителей компьютерных игр. Помочь в этом призвана технология, реализованная в видеокартах последних поколений — анизотропная фильтрация в играх.

Что это такое?

Каждому компьютерному игроку хочется, чтобы на экране разворачивалась красочная картина виртуального мира, чтобы, взобравшись на вершину горы, можно было обозревать живописные окрестности, чтобы, нажимая до отказа кнопку ускорения на клавиатуре, до самого горизонта можно было увидеть не только прямую трассу гоночного трека, а и полноценное окружение в виде городских пейзажей. Объекты, отображаемые на экране монитора, только в идеале стоят прямо перед пользователем в самом удобном масштабе, на самом деле подавляющее большинство трёхмерных объектов находится под углом к линии зрения. Более того, различное виртуальное расстояние текстур до точки взгляда также вносит коррективы в размеры объекта и его текстур. Расчётами отображения трёхмерного мира на двумерный экран и заняты различные 3D-технологии, призванные улучшить зрительное восприятие, в числе которых не последнее место занимает текстурная фильтрация (анизотропная или трилинейная). Фильтрация такого плана относится к числу лучших разработок в этой области.

На пальцах

Чтобы понять, что даёт анизотропная фильтрация, нужно понимать основные принципы алгоритмов текстурирования. Все объёкты трёхмерного мира состоят из «каркаса» (трехмерной объёмной модели предмета) и поверхности (текстуры) — двумерной картинки, «натянутой» поверх каркаса. Малейшая часть текстуры — цветной тексель, это как пиксели на экране, в зависимости от «плотности» текстуры, тексели могут быть разных размеров. Из разноцветных текселей состоит полная картина любого объекта в трёхмерном мире.

На экране текселям противопоставлены пиксели, количество которых ограничено доступным разрешением. Тогда как текселей в виртуальной зоне видимости может быть практически бесконечное множество, пиксели, выводящие картинку пользователю, имеют фиксированное количество. Так вот, преобразованием видимых текселей в цветные пиксели занимается алгоритм обработки трёхмерных моделей - фильтрация (анизотропная, билинейная или трилинейная). Подробнее обо всех видах - ниже по порядку, так как они исходят одна из другой.

Ближний цвет

Самым простым алгоритмом фильтрации является отображение цвета ближайшего к точке зрения каждого пискеля (Point Sampling). Всё просто: луч зрения определённой точки на экране падает на поверхность трёхмерного объекта, и текстура изображений возвращает цвет ближайшего к точке падения текселя, отфильтровывая все остальные. Идеально подходит для однотонных по цвету поверхностей. При небольших перепадах цвета тоже даёт вполне качественную картинку, но довольно унылую, так как где вы видели трёхмерные объекты одного цвета? Одни только шейдеры освещения, теней, отражений и другие готовы раскрасить любой объект в играх как новогоднюю ёлку, что же говорить о самих текстурах, которые порою представляют собой произведения изобразительного искусства. Даже серая бездушная бетонная стена в современных играх — это вам не просто прямоугольник невзрачного цвета, это испещрённая шероховатостями, порою трещинами и царапинами и другими художественными элементами поверхность, максимально приближающая вид виртуальной стены к реальным или выдуманным фантазией разработчиков стенам. В общем, ближний цвет мог быть использован в первых трёхмерных играх, сейчас же игроки стали гораздо требовательнее к графике. Что немаловажно: фильтрация ближнего цвета практически не требует вычислений, то есть очень экономична в плане ресурсов компьютера.

Линейная фильтрация

Отличия линейного алгоритма не слишком существенны, вместо ближайшей точки-текселя линейная фильтрация использует сразу 4 и рассчитывает средний цвет между ними. Единственная проблема, что на поверхностях, расположенных под углом к экрану, луч зрения образует как бы эллипс на текстуре, тогда как линейная фильтрация использует идеальный круг для подбора ближайших текселей независимо от угла обзора. Использование четырёх текселей вместо одного позволяет значительное улучшить прорисовку удалённых от точки обзора текстур, но всё равно недостаточно, чтобы корректно отразить картинку.

Mip-mapping

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

Билинейная фильтрация

Используя вместе линейную фильтрацию и MIP-текстурирование, получаем билинейный алгоритм, который позволяет ещё лучше отображать удалённые объекты и поверхности. Однако всё те же 4 текселя не дают технологии достаточной гибкости, к тому же билинейная фильтрация не маскирует переходы на следующий уровень масштабирования, работая с каждой частью текстуры по отдельности, и их границы могут быть видны. Таким образом, на большом удалении или под большим углом текстуры сильно размываются, делая картинку неестественной, как будто для людей с близорукостью, плюс для текстур со сложными рисунками заметны линии стыка текстур разного разрешения. Но мы же за экраном монитора, не нужна нам близорукость и разные непонятные линии!

Трилинейная фильтрация

Эта технология призвана исправить прорисовку на линиях смены масштаба текстур. Тогда как билинейный алгоритм работает с каждым уровнем mip-mapping по отдельности, трилинейная фильтрация дополнительно просчитывает границы уровней детализации. При всём этом растут требования к оперативной памяти, а улучшение картинки на удалённых объектах при этом не слишком ощутимо. Само собой, границы между ближними уровнями масштабирования получают лучшую обработку, нежели при билинейной, и более гармонично смотрятся без резких переходов, что сказывается на общем впечатлении.

Анизотропная фильтрация

Если просчитывать проекцию луча зрения каждого экранного пикселя на текстуре согласно углу обзора, получатся неправильные фигуры — трапеции. Вкупе с использованием большего количества текселей для расчётов итогового цвета это может дать гораздо лучший результат. Что даёт анизотропная фильтрация? Учитывая, что пределов количества используемых текселей в теории нет, такой алгоритм способен отображать компьютерную графику неограниченного качества на любом удалении от точки обзора и под любым углом, в идеале сравнимую с реальным видео. Фильтрация анизотропная по своим возможностям упирается лишь в технические характеристики графических адаптеров персональных компьютеров, на которые и рассчитаны современные видеоигры.

Подходящие видеокарты

Режим анизотропной фильтрации был возможен на пользовательских видеоадаптерах уже с 1999 года, начиная с известных карт Riva TNT и Voodoo. Топовые комплектации этих карт вполне справлялись с просчётом трилинейной графики и даже выдавали сносные показатели FPS с использованием анизотропной фильтрации х2. Последняя цифра указывает на качество фильтрации, которое, в свою очередь, зависит от количества текселей, занятых в расчёте итогового цвета пикселя на экране, в данном случае их используется целых 8. Плюс ко всему, при расчётах используется соответствующая углу зрения область захвата этих текселей, а не круг, как в линейных алгоритмах ранее. Современные видеокарты способны обрабатывать фильтрацию анизотропным алгоритмом на уровне х16, что означает использование 128 текселей для расчётов итогового цвета пикселя. Это сулит значительное улучшение отображения удалённых от точки обзора текстур, а также и серьёзную нагрузку, но графические адаптеры последних поколений снабжены достаточным количеством оперативной памяти и многоядерными процессорами, чтобы справляться с этой задачей.

Влияние на FPS

Преимущества понятны, но как дорого обойдётся игрокам анизотропная фильтрация? Влияние на производительность игровых видеоадаптеров с серьёзной начинкой, выпущенных не позднее 2010 года, очень незначительно, что подтверждают тесты независимых экспертов в ряде популярных игр. Фильтрация текстур анизотропная в качестве х16 на бюджетных картах показывает снижение общего показателя FPS на 5-10%, и то за счёт менее производительных компонентов графического адаптера. Такая лояльность современного железа к ресурсоёмким вычислениям говорит о непрестанной заботе производителей о нас, скромных геймерах. Вполне возможно, что не за горами переход на следующие уровни качества анизотропии, лишь бы игроделы не подкачали.

Конечно, в улучшении качества картинки участвует далеко не одна только анизотропная фильтрация. Включать или нет ее, решать игроку, но счастливым обладателям последних моделей от Nvidia или AMD (ATI) не стоит даже задумываться над этим вопросом - настройка анизотропной фильтрации на максимальный уровень не повлияет на производительность и добавит реалистичности пейзажам и обширным локациям. Немногим сложнее ситуация у хозяев встроенных графических решений от компании Intel, так как в этом случае многое зависит от качеств оперативной памяти компьютера, её тактовой частоты и объёма.

Опции и оптимизация

Управление типом и качеством фильтрации доступно благодаря специальному ПО, регулирующему драйвера графических адаптеров. Также расширенная настройка анизотропной фильтрации доступна в игровых меню. Реализация больших разрешений и использование нескольких мониторов в играх заставили производителей задуматься об ускорении работы своих изделий, в том числе за счёт оптимизации анизотропных алгоритмов. Производители карт в последних версиях драйверов представили новую технологию под названием адаптивная анизотропная фильтрация. Что это значит? Эта функция, представленная AMD и частично реализованная в последних продуктах Nvidia, позволяет снижать коэффициент фильтрации там, где это возможно. Таким образом, фильтрация анизотропная коэффициентом х2 может обрабатывать ближние текстуры, тогда как удалённые объекты пройдут рендеринг по более сложным алгоритмам вплоть до максимального х16-коэффициента. Как обычно, оптимизация даёт существенное улучшение за счёт качества, местами адаптивная технология склонна к ошибкам, заметным на ультранастройках некоторых последних трёхмерных видеоигр.

На что влияет анизотропная фильтрация? Задействование вычислительных мощностей видеоадаптеров, по сравнению с другими технологиями фильтрации, намного выше, что сказывается на производительности. Впрочем, проблема быстродействия при использовании этого алгоритма давно решена в современных графических чипах. Вместе с остальными трёхмерными технологиями анизотропная фильтрация в играх (что это такое мы уже представляем) влияет на общее впечатление о целостности картинки, особенно при отображении удалённых объектов и текстур, расположенных под углом к экрану. Это, очевидно, главное, что требуется игрокам.

Взгляд в будущее

Современное железо со средними характеристиками и выше вполне способно справиться с требованиями игроков, поэтому слово о качестве трёхмерных компьютерных миров сейчас за разработчиками видеоигр. Графические адаптеры последнего поколения поддерживают не только высокие разрешения и такие ресурсоёмкие технологии обработки изображений, как фильтрация текстур анизотропная, но и VR-технологии или поддержку нескольких мониторов.

www.syl.ru

NVIDIA: как настроить драйверы | World of Tanks

Чтобы настроить драйверы видеокарты, выполните следующие действия:

  1. Щёлкните правой клавишей мыши по пустому пространству на рабочем столе. В появившемся контекстном меню выберите пункт «Панель управления NVIDIA». 
  2. В списке настроек выберите «Параметры 3D» > «Регулировка настроек изображения с просмотром». Для корректной работы приложений выберите пункт «Настройки согласно 3D-приложению» и нажмите кнопку Применить.
  3. Перейдите в раздел «Управление параметрами 3D».

Для корректной работы приложений необходимо выставить следующие параметры:

Некоторые из перечисленных опций могут отсутствовать. Для сохранения настроек нажмите кнопку Применить. Затем перейдите в графу «Программные настройки» и в списке программ для настройки выберите World of Warplanes, World of Tanks или World of Warships если такой пункт присутствует. После этого для всех настроек программы в списке ниже укажите «Использовать глобальный параметр» и нажмите кнопку Применить.

После настройки драйверов видеокарты рекомендуется перезагрузить компьютер.

ru.wargaming.net

Антиалиасинг и анизотропная фильтрация | В-и-д-е-о+

Геймеры на сегодняшний день являются наиболее активными потребителями всех новых технологий и нововведений в 3D. По большому счёту, мощный 3D-акселератор на сегодняшний день нужен исключительно для игры в последние компьютерные игры с мощными 3D-движками, оперирующие сложными шейдерами различных версий. Сейчас никого уже не удивишь игрой с пиксельными шейдерами.

В сфере 3D уже давно идёт конкурентная битва между двумя столпами производителей графических процессоров: ATI и NVIDIA. Суровая Канада уже давно ведет борьбу против солнечной Калифорнии, и пока конца этому противостоянию не видно, что нам, простым потребителям, конечно, только на руку. Теперь разработать классный движок мало — чтобы иметь успех, нужно заручиться поддержкой либо калифорнийской дивы NVIDIA, либо канадской ATI, благо, теперь и у первой, и у второй есть свои партнёрские программы для разработчиков игр. У NVIDIA такая программа называется «The way it's meant to be played», а у ATI – «Get it in the game». Всё достаточно красноречиво и понятно: NVIDIA говорит, что «играть нужно так», а совсем не эдак, а ATI уверяет, что всё, что мы только ни пожелаем, мы обязательно получим в самой игре.

Если до бесконечности увеличивать количество полигонов в кадре, тем самым получая визуально более красивую для восприятия картинку, то в итоге мы придём к тому, что акселератор не сможет обрабатывать сцену с приемлемым уровнем частоты кадров, но в картинке всё равно будет чего-то не хватать. Лесенки из пикселей всё равно останутся, да и качество текстур не улучшится. Остаются менее явные способы по улучшению качества трёхмерной картинки на мониторе — это анизотропная фильтрация и антиалиасинг. Непосредственно к самому 3D-движку эти техники улучшения изображения не имеют никакого отношения, и сделать сам движок более красивым они, естественно, не могут, однако они могут работать с текстурами и изображением таким образом, что на выходе, то есть на мониторе, мы можем видеть визуально более красивую и мягкую картинку.

Именно на поприще анизотропной фильтрации и антиалиасинга проходит колоссальнейшее количество оптимизаций драйверов как со стороны NVIDIA, так и со стороны ATI.

Антиалиасинг

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

Для начала нужно чётко понимать, что изображение, которое мы с вами можем ежедневно наблюдать на экранах наших с вами мониторов, состоит из так называемых мелких частичек, которые принято называть пикселями. Хорошей аналогией в этом смысле может послужить пример с бумагой в клеточку. Изображение на мониторе — это та же бумага в клеточку, только они в данном случае очень и очень мелкие. Если говорят, что разрешение экрана составляет 1024х768 при 32-битном цвете, то это означает, что по горизонтали на мониторе умещается 1024 точек, а по вертикали — 768. При этом каждая точка может быть закрашена одним цветом из доступных в 32-битной палитре. На данный момент 32-битный цвет — это предел того, чего мы можем добиться на экране компьютера. Лучшие умы человечества (тот же Кармак) уже поговаривают о необходимости перехода на 64-битный цвет и указывают на явные минусы 32-битной палитры. В своё время при переходе с 16-битного на 32-битный цвет данная необходимость была достаточно чётко обоснована и виделись реальные причины, по которым стоило бы перейти на 32 бит. Переход же на 64-битный цвет на сегодняшний день — это скорее излишество. Так же как и в случае с 16 и 32 битами, в своё время придётся достаточно долго ждать, когда акселераторы всех уровней смогут с приемлемой скоростью обрабатывать 64-битный цвет.

Подавляющее большинство статей, в которых затрагиваются тем или иным образом принципы построения изображений в 3D и где ведётся разговор об антиалиасинге, изобилуют простым, но вместе с тем наиболее действенным примером, на котором можно достаточно хорошо понять, что же такое антиалиасинг. Посмотрите на увеличенную надпись «Апгрейд», сделанную в Word’e, а затем просто увеличенную в фотошопе. Не очень хорошо выглядит, не правда ли? По бокам букв видна так называемая гребёнка или, как её ещё называют, «лесенка». В сущности, эта самая «гребёнка» или «лесенка» и есть алиасинг. Можно представить и другой пример в виде геометрического объекта, например, пирамиды. По её краям также хорошо видна всё та же «гребёнка». А теперь посмотрите на другое изображение той же пирамиды, но с увеличенным вдвое разрешением. Выглядит уже значительно лучше, и «гребёнка» практически незаметна. Как уже было сказано выше, данный эффект, сглаживающий «гребёнку», был достигнут за счёт того, что мы увеличили разрешение в 2 раза. Что это означает? Предположим, у нас была отрендерена пирамида с разрешением 200х200 пикселей (выше мы уже подробно прояснили вопрос о том, что такое пиксели и зачем они нужны). Мы увеличили количество точек по вертикали и по горизонтали ровно в 2 раза, то есть получили изображение с разрешением 400 точек по вертикали и 400 точек по горизонтали. Это также означает, что количество точек на нашем объекте, который находился на сцене, увеличилось вдвое. Что это дало применительно к нашему эффекту алиасинга? Очевидно, что он стал минимален, то есть сгладился — ведь количество точек по краям объекта также возросло вдвое. Именно слово «сгладился» является здесь ключевым. Ведь антиалиасинг по-иному называют сглаживанием, что отражает самую суть технологии, которая сглаживает ту самую «лесенку» по краям трёхмерных объектов.

На самом деле, после увеличения разрешения «лесенка» с края пирамиды никуда не делась — она остаётся там по-прежнему. Однако за счёт того, что мы увеличили разрешение (что означает увеличение точек, которые расходуются на отображение пирамиды), эффект «лесенки» сгладился благодаря особенностям человеческого зрения, которое уже менее чётко видит пиксели на крае объекта. Абсолютно понятно, что если увеличивать разрешение ещё и ещё, то эффект алиасинга будет наблюдаться всё в меньшей и меньшей степени. Точнее, человеческий глаз станет замечать его всё в меньшей и меньшей степени, поскольку сам эффект алиасинга никуда не денется. Но так же абсолютно понятно и то, что до бесконечности увеличивать разрешение не получится, ведь мониторы, пусть даже и самые современные, имеют конечные разрешения, причём не такие уж и большие, что не позволит нам постоянно увеличивать количество точек. Проще говоря, простейшего эффекта антиалиасинга можно добиться, всего лишь увеличив разрешение экрана, однако разрешение не может расти до бесконечности. Казалось бы, выхода нет? Однако в действительности он был найден, и основан он всё на той же особенности зрения человека. Этого удалось достичь благодаря плавным переходам цветов на изображении. Фактически визуальное улучшение изображения производится не за счёт физического увеличения разрешения, а за счёт, если можно так выразиться, цветового увеличения разрешения. В данной статье мы не будем описывать алгоритмы вычисления этих точек и не будем вдаваться в глубины математических вычислений, а расскажем лишь о принципе работы такого антиалиасинга. Лесенка на границах объектов видна лишь потому, что чаще всего края трёхмерных объектов довольно сильно выделяются по цвету от остальной картинки и представляют собой тонкие линии в один пиксель. Это можно компенсировать, поставив некоторое количество точек с цветами, вычисляемыми по формуле из значений цвета самого края и точек рядом с этим краем. То есть, если край объекта чёрный, а фон белый, то дополнительная точка рядом с чёрной линией края станет серой. Чем больше этих дополнительных точек около края любого 3D-объекта, тем более гладко выглядят его края и тем меньше заметна лесенка. Данный способ называется краевым антиалиасингом.

Качество антиалиасинга, задаваемое в драйвере видеокарты, как то: 2x, 4x, 6x, 8x означает количество проставляемых дополнительных пикселей вокруг линии, нуждающейся в сглаживании.

Анизотропная фильтрация

Для того чтобы понять, что такое фильтрация, необходимо обладать некоторыми основными знаниями. Мы уже выяснили, что изображение на экране состоит из множества пикселей, количество которых определяется разрешением. Для вывода цветного изображения ваша видеокарта должна определять цвет каждого пикселя. Определяется его цвет посредством наложения текстурных изображений на полигоны, которые расположены в трёхмерном пространстве. Текстурные изображения состоят из пикселей, вернее, текселей, то есть тексель — это пиксель двухмерного изображения, наложенного на 3D-поверхность. Главная дилемма заключается в следующем: какой тексель или тексели определяют цвет пикселя на экране. Для представления проблемы фильтрации давайте представим одну картину. Допустим, что ваш экран – это плита с множеством круглых отверстий, каждое из которых является пикселем. Для того чтобы определить, какой цвет имеет пиксель относительно трёхмерной сцены, расположенной за плитой, достаточно просто посмотреть в одно из отверстий. А теперь представим луч света, который проходит через одно из отверстий и попадает на наш текстурированный полигон. Если последний расположен параллельно относительно отверстия, через которое проходит световой луч, то световое пятно будет иметь форму окружности. В противном случае, если полигон расположен не параллельно к отверстию, световое пятно искажается и имеет эллиптическую форму. Мы думаем, что многие читатели в это время задаются одним вопросом: «как связаны все эти плиты, отверстие, луч света с проблемой определения цвета пикселя?» Внимание! Ключевая фраза: все полигоны, расположенные в световом пятне, определяют цвет пикселя. Всё вышеизложенное и есть те необходимые базовые знания, которые нужны для того, чтобы понять различные алгоритмы фильтрации.

А теперь, чтобы вы лучше поняли, для чего нужна фильтрация, рассмотрим происходящие процессы на примере легендарной «Quake 3 Arena». Представьте какой какой-нибудь коридор с множеством квадратов и различных орнаментов (благо, в «Quake 3 Arena» этого хватает). Орнамент в начале коридора сильно детализирован, а ближе к концу коридора (горизонту) элементы орнамента становятся всё меньше и меньше, т.е. они отображаются меньшим числом пикселей. В результате теряются детали типа швов между элементами орнамента, что, соответственно, приводит к ухудшению качества изображения. Проблема заключается в том, что драйвер графической карты не знает, какие детали в текстуре являются важными.

Point Sampling

Point Sampling (поточечная выборка) — самый простой способ определения цвета пикселя. Этот алгоритм основан на текстурном изображении: выбирается всего один тексель, который ближе всех расположен к центру светового пятна, и по нему происходит определение цвета пикселя. Нетрудно догадаться, что это совершенно не верно. Во-первых, цвет пикселя определяется несколькими текселями, а мы выбрали только один. Во-вторых, форма светового пятна может измениться, а алгоритм не принимает это во внимание. Главным недостатком поточной выборки является тот факт, что когда полигон расположен близко к экрану, количество пикселей будет значительно выше, чем текселей, из-за чего качество изображения очень сильно пострадает. Так называемый эффект блочности, как мы полагаем, многие могли наблюдать в старых компьютерных играх, например, в том же легендарном «Doom».

У Point Sampling есть преимущество. Из-за того, что определение цвета пикселя осуществляется всего по одному текселю, данный метод не критичен к пропускной способности памяти, а это автоматически даёт данному способу фильтрации колоссальные диведенды в том плане, что на фильтрацию по данной схеме затрачивается очень мало ресурсов 3D-акселератора.

Bi-Linear Filtering

Bi-Linear Filtering — билинейная фильтрация, основанная на методе использования интерполяционной техники. Для определения нужных текселей используется основная форма светового пятна, то есть круг. В нашем примере с кругом последний аппроксимируется 4 текселями. Как видим, здесь дела обстоят несколько лучше, чем с Point Sampling. Билинейная фильтрация использует уже 4 текселя. Изображение получается более качественным, блочность отсутствует, однако близкие к экрану полигоны выглядят расплывчато, и связано это с тем, что для интерполяции необходимо большее количество текселей, нежели доступные четыре.

Расплывчатость — отнюдь не самая главная проблема билинейной фильтрации. Дело в том, что аппроксимация выполняется корректно лишь для объектов, расположенных параллельно экрану или точке наблюдения, в то время как 99% объектов в любой компьютерной игре расположены непараллельно к точке наблюдения. Отсюда можно сделать вывод, что 99% объектов будут аппроксимироваться неправильно. Возьмём, к примеру, наш круг – полигон расположен непараллельно относительно точки наблюдения, стало быть, мы должны аппроксимировать эллипс, а мы аппроксимируем круг, что крайне неверно. Ко всему прочему билинейная фильтрация значительно требовательней к пропускной полосе данных памяти, что, в общем-то, более чем логично, учитывая то, что билинейная фильтрация использует уже 4 текселя для определения цвета пикселя.Как видим, билинейная фильтрация выглядит несколько лучше, нежели Point Sampling. И всё же она очень далека от идеала.

Tri-Linear filtering

Tri-Linear filtering — трилинейная фильтрация, представляет собой симбиоз билинейной фильтрации и mip-текстурирования. Прежде чем говорить об алгоритме работы трилинейной фильтрации, давайте выясним, что такое МIP-текстурирование. MIP-текстурирование, или mip-mapping, — это метод уменьшения объёма вычислений, необходимых для точного наложения текстурного изображения на полигон. По сути, мипмеппинг выполняет те же задачи, что и Point Sampling, но делает это на порядок лучше. MIP-текстурирование призвано избавить нас от ухудшений изображений, когда несколько текселей накладываются на один пиксель. Посмотрим на проблему глобальней и попробуем найти решение всему этому. Для того чтобы правильно вывести пиксель на экран, необходимо скомбинировать значения всех текселей, которые и будут накладываться на этот пиксель. Но пропускная способность памяти не бесконечна, а это огромнейший обьём работы, который неблагоприятно отразится на быстродействии вашей видеокарты. Mip-mapping способствует снижению объёмов этой работы. Метод MIP-текстурирования основан на генерации и хранении множества версий исходного текстурного изображения. Эти версии имеют большое количество разрешений, каждое из которых всё меньше и меньше исходного. Во время текстурирования пикселя вам достаточно выбрать версию текстурного изображения. В вашем распоряжении есть 4 близлежащих текселея из текстурного изображения, больших по размеру, чем пиксель, и столько же текселей, меньших по размеру, чем пиксель. По сути, mip-уровни представляют собой заранее рассчитанные, более маленькие версии исходной текстуры, из-за чего обеспечивается лучшая аппроксимация.

Итак, мы выяснили, что такое mip-mapping, теперь вернёмся к нашей трилинейной фильтрации. Как мы уже говорили, Tri-Linear filtering представляет собой симбиоз билинейной фильтрации и mip-текстурирования. По сути, билинейная фильтрация производится на двух mip-уровнях. А в итоге мы имеем 2 текселя, по одному для каждого mip-уровня. Цвет пикселя определяется при помощи интерполяции по цветам двух mip-текстур.

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

Anisotropic filtering

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

Вполне очевидно — для того чтобы добиться лучшего качества, необходимо использовать все пиксели светового пятна с усреднённым значением. Существуют техники фильтрации, которые применяют от 16 до 32 текселей для определения цвета пикселя. Мы также должны учитывать тот факт, что форма светового пятна изменяется вместе с изменением положения полигона относительно точки наблюдения. Собственно говоря, этим и предлагает пользоваться анизотропная фильтрация.

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

В видеорешениях, использующих тайловую (тайл, говоря простым языком, – участок изображения опредёленного размера, как правило, 32х32 пикселя) архитектуру, благодаря применению тайлов, существенно экономятся ресурсы полосы пропускания памяти, что позволяет использовать анизотропную фильтрацию без значимых потерь быстродействия. При помощи анизотропной фильтрации можно получить лучшее качество изображения. Оно достигается за счёт более точного представления текстур и улучшенной глубины детализации.

Уровень анизотропной фильтрации определяется числом текселей, которые обрабатываются при вычислении конечного пикселя. Современные графические решения позволяют выставить уровень фильтрации в драйвере. Самыми распространёнными уровнями фильтрации являются 2x (16 текселей), 4x (32 текселя), 8x (64 текселя) и 16x (128 текселей). Очевидно, что при повышении уровня анизотропной фильтрации нагрузка на полосу пропускания памяти также увеличивается, а это неминуемо сказывается на производительности.

Оптимизации анизотропной и трилинейной фильтраций

Компании-разработчики графических чипов ATI и NVIDIA всё время стараются выжать дополнительную производительность из своих продуктов. Что, в общем-то, очевидно и оправдано — конкуренцию между двумя гигантами-производителями графических процессоров никто не отменял. Для достижения своих целей вендоры применяют различные оптимизации, которые позволяют увеличить производительность графических решений. Однако зачастую оптимизации повышают производительность, но снижают качество картинки. Увы, но поговорка «сделать быстрей — не значит сделать лучше» очень часто актуальна для ситуации с различными оптимизациями ATI и NVIDIA. Разработчики пытаются играть на всё тех же особенностях зрения человека и стараются повысить производительность за счёт слабозаметного ухудшения качества изображения.

Возьмём, к примеру, брилинейную фильтрацию. Нет-нет, мы не оговорились, именно брилинейная фильтрация. Так сказать, новый вид, который появился благодаря упорным стараниям вендоров. Брилинейная фильтрация представляет собой смешанный режим фильтрации между билинейной и трилинейной — область, в которой граничат соседние mip-уровни, и которая, собственно говоря, подвергается трилинейной фильтрации, была уменьшена. Вследствие этого удалось поднять производительность, что вполне ожидаемо, ведь мы фильтруем гораздо меньше. При этом качество изображения становится хуже, однако ухудшение качества в данном случае явно оправдано, если учесть значительный выигрыш в производительности. Это отчётливо видно, если сравнивать изображения, полученные с помощью полной трилинейной фильтрации.

Брилинейную фильтрацию впервые применила NVIDIA на своих видеокартах GeForce FX 5xxx Новые видеокарты GeForce 6xxx также используют брилинейную фильтрацию, однако компания NVIDIA после критики и различных дискуссий в многочисленных конференциях добавила возможность отключения оптимизации.

В недалёком прошлом продукты компании ATI славились более высоким качеством картинки, нежели таковые от NVIDIA. Однако с выходом графического процессора Radeon 9600 всё изменилось – последний, как и более новое решение Radeon X800, также использует брилинейную фильтрацию. Однако, в отличие от NVIDIA, ATI не соизволила не только объяснить процедуру фильтрации, но и не признала сам факт использования оптимизаций.

Компания ATI пошла на хитрость: драйверы переключаются на полную трилинейную фильтрацию при использовании цветных mip-текстур. Именно последние применяются в стандартных тестах качества, которые используют обозреватели и тестировщики. Однако находчивые ребята с сайта Computerbase обнаружили, что в компьютерной игре «Call Of Duty» X800 даёт меньшую частоту кадров при использовании цветных mip-текстур. После чего обозреватели Computerbase провели сравнение качества изображения. Как оказалось, при применении обычных текстур Radeon X800 использует брилинейную фильтрацию. При употреблении цветных текстур в «Call Of Duty» (1600х1200) общий показатель FPS Radeon Х800 падает на 11-13 fps. Самое интересное, что ATI заявляет об использовании полноценной трилинейной фильтрации и рекомендует тестировщикам отключать оптимизации у конкурентов для обеспечения честного сравнения.

В интервью популярному сайту Toms Hardware Guide компания ATI всячески уходила от конкретного ответа, утверждая, что X800 использует полноценную трилинейную фильтрацию. На этом оптимизации от компании ATI не заканчиваются. Так, продукты канадской фирмы ATI используют ещё один вид оптимизации, который называется «stage optimization» — оптимизацией ступени. Метод оптимизации основан на применении «трилинейной» (брилинейной) фильтрации только к первой ступени текстуры. Остальные ступени 1-7 фильтруются простым билинейным методом.

Стоит отметить, что во многих играх это не критично, поскольку верхние ступени текстур являются либо картами неровностей, либо картами освещения, для которых полноценная фильтрация не критична, поэтому ухудшения изображения вы попросту не заметите. Однако есть и исключения. Популярная компьютерная игра Unreal Tournament использует карты деталей с высоким разрешением на ступенях 1-7, поэтому потери в качестве неизбежны.

Также стоит оговориться, что эта оптимизация функционирует только при насильственном включении анизотропной фильтрации в драйверах вашей видеокарты. Если вы оставляете выбор приложению (by application), то обеспечивается полноценная «трилинейная» (брилинейная) фильтрация ко всем ступеням текстуры.

Компания NVIDIA также стала использовать эту оптимизацию, которая появилась в драйверах версии 51.xx для карт GeForce 5xxx.

Адаптивная анизотропная фильтрация — ещё одна вариация на тему оптимизаций. Её уже давно используют продукты компании ATI. NVIDIA также не отстаёт — в GeForce 6800 эта оптимизация частично реализована.

Алгоритм адаптивной анизотропной фильтрации заключается в том, что поверхности 3D-изображения получают различный уровень анизотропной фильтрации в точке наблюдения. Такой подход позволяет существенно экономить вычислительные ресурсы и тем самым значительно повышать общий fps.

Использование такого метода фильтрации оправданно. Представьте себе сцену из какой-нибудь компьютерной игры: скажем, ваш герой стоит лицом к стене. Фильтровать стену с уровнем анизотропной фильтрации 16х не имеет смысла, то есть картинка будет такой же, как и с 2х. Идея адаптивной анизотропной фильтрации очевидна: «сэкономь вычислительную мощность там, где это можно, дабы последняя не расходовалась впустую».

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

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

v-i-d-e-o.info

Драйверы видеокарт: на что влияют их настройки

Наверное, многих геймеров при взгляде на количество настроек драйверов видеокарты волновал вопрос о существовании некоей оптимальной комбинации, которая повысит уровень графики в играх или добавит еще несколько кадров/с. Мы решили разобраться с этим и узнать, есть ли на самом деле такое волшебное сочетание опций.

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

Проверка проводилась на адаптерах NVIDIA GeForce GTX 460 и Radeon HD 5870. Это продукты одного класса, показывающие схожие результаты во многих бенчмарках, что, впрочем, не являлось необходимым условием для участия в тесте.

У каждого ускорителя имеются свои специфические настройки графики, аналоги которых не обязательно встречаются у конкурента. Так, например, у NVIDIA есть опции, отвечающие за Ambient Occlusion, а у AMD присутствуют настройки тесселяции.

Изначально планировалось сделать объемный материал со множеством диаграмм, демонстрирующих разницу в количестве кадров для каждого отдельного параметра (например, для всех четырех значений фильтрации текстур, от High Performance до High Quality). Позже, однако, по причинам, которые станут очевидны ниже, оказалось, что такая тщательность излишня, и все сравнения мы решили провести лишь в двух режимах, названных нами «Максимальное качество» и «Максимальная производительность».

Для каждой видеокарты это свой набор опций. Для NVIDIA «Наилучшее качество» (или наименьшая производительность) должно было наблюдаться в следующем случае (в скобках указано значение для противоположного режима «Максимальная производительность» или по аналогии – наихудшее качество): Ambient Occlusion – On (Off), Maximum pre-rendered frames – 0 (8), mixed-GPU acceleration – Multiple Display (Single Display), Power management mode – Adaptive (Maximum Performance), Anisotropic Sample optimization – Off (On), Texture filtering – Hiqh Quality (High Perfor-mance), Trilinear optimization – Off (On), Threaded Optimization – Off (On).

Для Radeon аналогичные настройки выглядели так: Texture Filtering Quality – High Quality (Performance), Mipmap Detail Level – High Quality (Performance). Как сказываются на производительности и качестве картинки опции Enable Surface Format Optimization и Morphological filtering, из описания было не ясно, однако в ходе дальнейшей проверки выяснилось, что они не влияют ни на тот, ни на другой показатель. Настройка тесселяции также позже была «дисквалифицирована», к чему мы еще вернемся.

Вдаваться в описание всех параметров не позволяет размер материала, но небольшие подсказки доступны непосредственно на странице настроек драйверов. В режиме «Максимальное качество» некоторые опции не обязательно улучшали графику: в ряде случаев просто отключалась оптимизация, и, следовательно, должно было падать количество кадров в секунду (именно поэтому режим имеет второе название – «Наименьшая производительность»).

Как уже должно быть ясно, с первым пресетом мы рассчитывали получить минимальный fps, а со вторым – максимальный.

Качество

Чтобы оценка качества не оказалась субъективной, пришлось подумать над методом сравнения картинки до и после. Просмотр бенчмарков, как выяснится позднее, ничего бы не дал, поэтому решено было сопоставить непосредственно изображения. Для этого использовался пакет 3DMark06, умеющий рендерить конкретный кадр 3D-сцены в графический файл. Идея практически идеальная, поскольку тестовый пакет всегда сохраняет картинку, на которой все объекты находятся в одних и тех же местах. Разница будет заметна только тогда, когда отключены кое-какие эффекты или изменены настройки качества, что и требовалось в нашем случае.

Как уже упоминалось, все сравнения проводились в двух режимах – настройки качества на максимуме и минимуме,– и результат оказался, мягко говоря, неожиданным. Из четырех пар скриншотов (по два для каждого теста в 3DMark06) минимальная разница была заметна только в первой сцене с участием космического десанта. Все отличия сводились к тому, что в нескольких местах свет на объектах отражался чуть-чуть ярче, чем в других.

Для усиления объективизма мы решили сравнить скриншоты в графическом редакторе. С этой целью полученные кадры загружались в два отдельных слоя Paint.Net (то же самое можно сделать и в других программах), после чего выбирался режим Difference («Разница»). Там, где изображения полностью совпадали, получался черный цвет, а при небольшом отличии картинка становилась светлее. Незначительные «проблески» были столь слабо заметны, что их даже не удалось уловить на откалиброванном мониторе дизайнера, где изображение казалось полностью черным. Поскольку на этом экране все выглядит так же, как и в печати, размещать черный кадр в статье мы не стали. По словам дизайнера, вся полезная информация в изображении умещалась в 2%, поэтому не имело смысла ее вытягивать с помощью повышения контраста. На ненастроенных мониторах разница была более ощутима, но лишь при сравнении кадров, полученных на видеокарте GeForce (вероятно, проявила себя опция Ambient Occlusion). В случае с Radeon светлые области располагались в тех же местах, но казались практически неуловимы (для их обнаружения следовало находиться в комнате со слабым освещением).

Ambient Occlusion – On,Maximum pre-rendered frames – 0,mixed-GPU acceleration – Multiple Display,Power management mode – Adaptive,Anisotropic Sample optimization – Off,Texture filtering – Hiqh Quality,Trilinear optimization – Off,Threaded Optimization – Off.Ambient Occlusion – Off,Maximum pre-rendered frames – 8,mixed-GPU acceleration – Single Display,Power management mode – Maximum Performance, Anisotropic Sample optimization – On,Texture filtering – High Performance,Trilinear optimization – On,Threaded Optimization – On.
Texture Filtering Quality – High Quality,Mipmap Detail Level – High Quality.Texture Filtering Quality – Performance,Mipmap Detail Level – Performance.

Производительность

Сравнение производительности видеокарты NVIDIA с разными настройками драйверов
Сравнение производительности видеокарты AMD с разными настройками драйверов

Как можно догадаться, после достаточно неожиданных показателей предыдущей проверки заметной разницы в производительности мы уже не ожидали. Для очистки совести в Heaven Benchmark мы запустили индивидуальные тесты со всеми интересующими нас комбинациями опций (около двух десятков), но после того как выяснилось, что разброс результатов практически отсутствует (минимальный балл – 1162 (46,1 кадра/с), максимальный – 1206 (47,9 кадра/с) и четкая корреляция между низкими настройками качества и высоким fps тоже, мы решили проводить все дальнейшие проверки только в режимах «Максимальное качество» и «Максимальная производительность».

Чтобы не все тесты оказались синтетическими, в обзор мы добавили Deus Ex: Human Revolution, в котором, к примеру, есть нечасто встречающаяся возможность настройки режима SSAO, и поэтому было интересно посмотреть, как на игру повлияет изменение Ambient Occlusion в настройках NVIDIA. Fps снимался с помощью FRAPS, поскольку просмотр даже нестатической сцены с большим числом объектов в кадре давал отличные повторяющиеся результаты (+/- 1 кадр).

Как выяснилось, даже после таких крайних мер между двумя полюсами качества не наблюдалось практически никаких отличий. В тестах 3DMark06/11, Heaven Benchmark и Deus Ex: Human Revolution вся разница баллов укладывалась если не в сотые, то в десятые доли процента.

Некоторые параметры, например режимы тесселяции в Radeon, мы решили не изменять, поскольку они хоть и существенно влияют как на качество, так и на производительность, однако делают это не благодаря оптимизации или включению каких-то микронастроек в драйверах, а лишь за счет «грубого» вмешательства в игры. Например, в тесте Heaven Benchmark установка Tessellation Level в значение 0 по­просту отключала тесселяцию, и поэтому мы ее в дальнейшем игнорировали.

Сравнение производительности также было сделано в 3DMark06 и 3DMark11, но поскольку результаты и здесь оказались идентичными, то для экономии места диаграммы было решено не вставлять в статью.

Выводы

По результатам двух материалов можно сделать следующий вывод. Рекомендуем пользователям не заморачиваться с настройками драйверов и сбросить их в значения по умолчанию, для чего как у GeForce, так и у Radeon есть соответствующая кнопка. Далее, чтобы реально улучшить качество изображения, советуем поставить анизотропную фильтрацию на максимум (16x), включить вертикальную синхронизацию и тройную буферизацию (дуэт из этих двух опций немного снизит количество кадров в секунду, но зато картинка не будет «резаться» по горизонтали). Если быстродействие компьютера позволяет проводить дальнейшие улучшения, то можно активировать и сглаживание, поставив коэффициент на 4x.

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

itc.ua

Настройка графики GTA 5 [2.2]

ЧАСТЬ ВТОРАЯ

Настройка спецэффектов

Параметр регулирует различные специальные эффекты пост-обработки в игре, такие как: свечение (bloom, блум), эффект скорости (motion blur, блюр), блики от солнца и засветы, глубина резкости (DoF), имитация HDR на некоторых поверхностях, солнечные лучи (God Rays), марево (жара, искажение воздуха), объёмный дым, туман и эффекты ветра. Как видите, довольно внушительный список. Стоит сразу сказать, что некоторые из перечисленных эффектов, а именно "глубина резкости" и "эффект скорости (motion blur)" доступны только при значении "Оч. выс." обсуждаемого параметра. На значениях ниже они будут недоступны. Довольно проблемно показать весь спектр изменяемых эффектов с помощью скриншотов, поскольку они носят в основном случайный характер, но всё же некоторые можно наблюдать постоянно. Например, свечение (bloom) и туман (при соотв. погоде.). Чтобы наглядно показать вам изменения в данных эффектах, воспользуйтесь нашим интерактивным сравнением:

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

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

Параметр довольно сильно снижает производительность на настройках "Высшая степень" и "Оч. выс.". Порой, разница между отдельными значениями достигает 10-15 FPS (по многочисленным отзывам западных игроков) на средних и слабых машинах. На значении "Высокая" сохраняется довольно широкий набор спецэффектов, но при этом FPS существенно не понижается. Разница в FPS может достаточно сильно варьироваться в зависимости от моделей видеокарт (на топовых моделях разница снижается), но тем не менее, обобщённые значения вы можете посмотреть ниже.

Влияние на производительность: высокоеРазница в FPS: на топовых машинах влияние параметра будет средним или низким, но на средних и относительно слабых компьютерах разброс может быть значительно больше.

Степень размытия при движении

Настройка на личное предпочтение каждого. Кому как нравится. Доступна только при значении "Оч. выс." параметра "Настройка спецэффектов". Регулирует степень "эффекта скорости", более известного как Motion Blur. Чем больше заполнена шкала, тем сильнее будет размываться окружающий мир при передвижении на высоких скоростях. Оптимальным является значение опции в 50% или ниже (опять же, кому как нравится).

Влияние на производительность: отсутствует

Эффект глубины резкости

Если вам нравится эффект размытия заднего плана в игре, когда вы передвигаетесь на транспортном средстве или используете прицел на оружии, то включите данную опцию. Напоминаем, что как и Motion Blur (степень размытия в движении) этот эффект доступен лишь при значениях "Оч. выс." и "Высшая степень" параметра "Настройка спецэффектов."Объективно, использоваение данного эффекта помогает сфокусироваться на определённых объектах или сценах во время игрового процесса. Настраивайте опцию на своё усмотрение, не боясь при этом потерять в производительности. Чтобы увидеть эффект, который даёт включение глубины резкости, воспользуйтесь интерактивным сравнением:

Влияние на производительность: отсутствует (на деле есть, но слишком несущественно)

Разница в FPS: 1-2 FPS между значениям "Выкл." и "вкл." соответственно.

Анизотропная фильтрация

Данная технология известна всем и используется везде, где только можно. Позволяет сохранять резкость текстур при взгляде на последние под различными углами по отношению к игроку. Например, если вы смотрите прямо перед собой, то текстура дороги сбоку от вас возле краёв монитора не будет размываться, а останется чёткой. Чтобы лучше понять механизм действия данной опции конкретно в GTA 5, воспользуйтесь нашим интерактивным сравнением:

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

Влияние на производительность: отсутствует (на деле есть, но слишком несущественно)

Разница в FPS: 1-2 FPS между значениям "Выкл." и "16x" соответственно.

Затенение AO

Или Ambient Occlusion. Многим эта технология будет больше известна как SSAO, хотя это лишь один из её вариантов, но именно он и используется в игре. Данная технология, на мой взгляд, позволяет значительно преобразить любые игры и придать невероятный уровень достоверности игровых сцен, если все остальные стороны, такие как освещение и детализация выполнены на должном уровне. Технология работает следующим образом: на месте соединения двух объектов (например, стена и пол) куда не может попасть прямой поток света и где не может возникнуть генерируемая движком игры тень, технология глобального затенения создаёт эту самую тень. Таким образом, различные сложные по детализации объекты оживают, поскольку даже мельчайшие изгибы начинают отбрасывать тень и достоверность объекта или сцены резко повышается. Данная технология не создаёт настоящие тени, которые бы очень сильно грузили систему, она создаёт фиксированные затенения в местах стыков, которые при освещении динамическим источником света (например, фарами авто или фонариком на оружии) исчезают. Существуют несколько видов данной технологии, отличающиеся более продуманным поведением и качеством затенений. В GTA 5, как уже говорилось, используется одна из самых простых вариаций, но это не мешает ей довольно сильно преображать картинку. Чтобы понять разницу в качестве игровых сцен при использовании данной опции, воспользуйтесь интерактивным сравнением:

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

  1. Установите требуемое значение настройки "Затенение AO" (рекомендуется "Высокая")
  2. Сохраните сделанные изменения
  3. Параметр "Настройка спецэффектов" переведите на значение "Стандарт"
  4. Сохраните сделанные изменения
  5. Параметр "Настройка спецэффектов" верните на то значение, которое было установлено до внесения изменений в пункте 3.
  6. Сохраните сделанные изменения.

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

Влияние на производительность: низкоеРазница в FPS: 2-4 FPS между значениями "Выкл." и "Высокая" соответственно.

Тесселяция

Данная опция доступна только при версии DirectX 11. Технология создаёт дополнительные геометрические детали объектам, делая их объёмнее и глаже. В GTA 5 данная технология в основном воздействует на деревья, некоторые городские субъекты вроде кабелей и проводов, на водную гладь и на камни. При обычной игре различия при использовании данной опции не так сильно заметны, но всё же могут дать несколько большие игровые впечатления. Параметр оказывает довольно низкое влияние на производительность. Чтобы показать эффект от использования данной технологии, предлагаем вам интерактивное сравнение, где объектом сравнения выступают прекрасные пальмы:

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

Влияние на производительность: низкоеРазница в FPS: 3-4 FPS между значениями "Выкл." и "Оч. выс." соответственно.

Дополнительные настройки изображения

Длинные тени

При активации данной опции игровые тени станут более "законченными" в том плане, что они будут отбрасываться от объекта полностью, т.е. от нижней точки до самой верхней точки игровой модели. Если не совсем понятно, то представьте себе фонарный столб высотой 2500 мм (2,5 метра). При выключенной опции "Длинные тени" отбрасываемая столбом тень будет иметь размер в ~2000 мм, от низа столба до верхней границы в 2000 мм. При включённой опции тень будет отбрасываться в полные 2500 мм высоты ртутного столба. Также, при включении обсуждаемого параметра тени будут отбрасываться на большее расстояние от источника, чем если бы параметр был выключен. Конечно, столб взят просто за удобный и пример и вылюченная опция длинных теней ни в коем случае не будет "обрубать" его высоту и в итоге вы не увидите неполноценную тень от столба. Опция действует очень выборочно и в основном влияет на растительность. Особенно хорошо все эти изменения в длине теней прослеживаются во время рассвета и заката, так как вы знаете из школьного курса (если вы ходили на уроки), что в зависимости от угла падения света на объект меняется длина отбрасываемой объектом тени. В обычные дневные часы изменение этой опции может быть не столь заметно и потребуются некоторые усилия, чтобы увидеть разницу в длине теней. Исходя из этого, можно сказать, что настройка включается и выключается на собственный вкус. Если вы не против того, чтобы пожертвовать парой кадров в секунду в угоду более зрелищным теням при рассветах и закатах, то включите данную опцию. Если каждый кадр на счету, выключите опцию. Чтобы вы могли наглядно увидеть различия при использовании обсуждаемого параметра, предлагаем интерактивное сравнение со скриншотами, сделанными во время заката:

Влияние на производительность: низкоеРазница в FPS: 2-3 FPS между значениями "Выкл." и "Вкл." соответственно.

Тени высокого разрешения

Логическое продолжение параметра "Качество теней". Добавляет картам теней ещё большую разрешающую способность, в следствие чего, их качество становится максимально высоким (при условии, что у родительского параметра Качество теней стоит максимальное значение). Изменения при включении этой опции видны лучше всего при значении "Резко" параметра "Мягкие тени". При использовании других методов смягчения теней вы практически не увидите разницы в конечном результате. Настройка не так сильно бьёт по производительности, но тем не менее, если вы не являетесь владельцам топового компьютера и используете алгоритмы смягчения теней, вроде фирменных NVIDIA PCSS или AMD CHS, то данный параметр для вас не будет иметь сильного значения и его лучше оставить выключенным. Для сравнения выходного качества теней при использовании обсуждаемой настройки, милости просим к нашему интерактивному сравнению ("Мягкие тени" установлены на значении "Резко"):

Влияние на производительность: среднееРазница в FPS: 5-7 FPS между значениями "Выкл." и "Вкл." соответственно.

Подгрузка более детализированных текстур во время полёта

С переводом данной опции переводчики из 1С тоже постарались. В оригинале этот параметр называется "High Detail Streaming While Flying", что означает подгрузку не более детализированных текстур, а объектов. Да, именно объектов, а это значит, что во время полёта будут прорисовываться более детализированные объекты игрового мира. В особенности это касается различных рекламных щитов, крупных кустов на земле, крыш домов, заборчиков и всяких ограждений и так далее. Словом, всё, что особенно бросается в глаза при полёте и создаёт общий рисунок местности, делая её более живой при беглом взгляде, который вообще возможен во время полёта. Детализация поверхности довольно сильно преображается, при этом, производительность остаётся на комфортном уровне, поэтому, данную настройку рекомендуется включить. Впрочем, опция всё же носит более субъективный характер и настраивать её стоит лишь по своему желанию. Далее, вашему вниманию, как всегда, представлено интерактивное сравнение:ко

Влияние на производительность: низкоеРазница в FPS: 3-5 FPS между значениями "Выкл." и "Вкл." соответственно.

Увеличенное расстояние подгрузки более детализированных объектов

Настройка является дочерней для параметра "Фокусировочная шкала" и логически продолжает его действие, но, в отличие от родителя, в значительно большем влиянии на качество графики и производительности. Если изменения параметра Фокусировочная шкала практически не были заметны при беглом взгляде на общий игровой пейзаж, то с изменением дочернего параметра дело обстоит совершенно иначе. Настройка представлена в виде шкалы и начиная с самых малых величин её заполнения, вы будете замечать всё более очевидные и невероятные воздействия параметра на качество детализации объектов на дальних расстояниях. Особенно хорошо это заметно на пейзажах округа Блэйн, где размещено огромное количество объектов, которые заметно прибавляют в детализации при увеличении значения обсуждаемого параметра. Среди всех параметров, этот имеет наибольшее влияние на производительность по всем критериям, так как он способен значительно понизить FPS и при этом "съесть" очень существенный объём видеопамяти, поэтому, эта настройка скорее подходит для владельцев топовых компьютеров с большим объёмом видеопамяти. Ниже представлено интерактивное сравнение, с помощью которого можно проследить изменения в детализации дальнего плана:

Влияние на производительность: высокое (потребляет много видеопамяти)

Разница в FPS:

Длина теней

Наконец, последним параметром из того довольно внушительного списка, что мы разобрали, будет настройка, отвечающая за дистанцию, на которой будут прорисовываться тени без потерь в качестве, в следствие уменьшения размеров карты теней. В оригинале, параметр называется "Extended Shadow Distance" (привет, переводчики из 1С!). По своему смыслу опция близка к настрокам, регулирующим дистанцию прорисовки объектов, только здесь в роли объектов выступают тени. Чем больше заполнена шкала настройки, тем на большем расстоянии от игрока тени будут сохранять свою изначальную детализацию, заданную параметрами, отвечающими за качество теней. Опция не так сильно бьёт по производительности, но тем не менее, предназначена скорее для топовых по конфигурациям систем, нежели чем для средних и, тем более, слабых машин. Далее, как всегда, вы можете ознакомиться с интерактивным сравнением, демонстрирующим влияние настройки на игровые тени:

Влияние на производительность: низкоеРазница в FPS: 3-5 FPS между значениями "0%" и "100%" соответственно.

Часть вторая:

Альтернативные методы настройки графики и оптимальные значения графических параметров

В данной части раздела будут рассмотрены различные способы, с помощью которых вы сможете улучшить качество графики, не потеряв при этом в производительности, а в некоторых случаях, даже улучшив её. Будет приведён своеобразный рейтинг "прожорливости" настроек, опираясь на который, вы сможете узнать, какие графические настройки в первую очередь стоит изменять, если вас не устраивает текущая производительность игры. Также, будет приведена инструкция по автоматизации процесса настройки игры для ленивых с помощью специального программного обеспечения от NVIDIA.

Стоит заметить, что все способы и методы, о которых ниже пойдёт речь, были созданы и написаны для владельцев видеокарт NVIDIA GeForce, следовательно, если вы являетесь владельцем оборудования от AMD, вам нужно будет выполнять все инструкции в программе AMD Catalyst Control Center аналогично тому, как это происходит в программе NVIDIA Control Panel. Эти программы схожи по своему принципу, поэтому вам будет несложно адаптировать инструкцию под себя. Поехали!

Рейтинг графических настроек по влиянию на производительность

Что вы первым делом делаете, когда запустив игру и начав играть, обнаруживаете ощутимо низкую производительность, или проще говоря "тормоза"? Конечно же, начинаете биться в истерике идёте в меню графических настроек и начинаете понижать их. Вопрос в том, какие именно настройки в первую очередь вы будете понижать? Многие пользователи стараются действовать логически и на основе своего опыта по настройке других игр и пробуют угадать, какие именно настройки способны сильнее всего убивать производительность и какие в первую очередь стоит изменять. Наверное, это и есть самый верный и грамотный подход к настройке игры, поскольку банальным понижением всех и вся вы, может, и выиграете достаточно большое увеличение производительности, но всё равно вернётесь к ручной настройке каждого параметра, потому что смотреть на ужасную графику никто не захочет, верно? Хотя, конечно, бывают исключения из этого правила в погоне за мифическим максимальным FPS в ущерб графической части.

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

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

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

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

Красным цветом выделены параметры, оказывающие высокое влияние на производительность,оранжевым — среднее, зелёным — низкое, соответственно.

  1. Сглаживание (MSAA, TXAA)
  2. Качество травы
  3. Настройка спецэффектов
  4. Увеличенное расстояние подгрузки более детализированных объектов
  5. Качество отражений
  6. Качество теней
  7. Качество шейдеров
  8. Тени высокого разрешения
  9. Мягкие тени
  10. Версия DirectX
  11. Длина теней
  12. Населённость города
  13. MSAA для отражений
  14. Фокусировочная шкала
  15. Подгрузка более детализированных текстур во время полёта
  16. Тесселяция
  17. Затенение АО
  18. Качество воды
  19. Качество частиц
  20. Длинные тени
  21. Качество текстур
  22. Эффект глубины резкости
  23. Анизотропная фильтрация

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

Альтернативный метод включения сглаживания FXAA

Как уже было сказано в соответствующем заголовке, сглаживание MSAA даёт отличное качество картинки, но значительно снижает производительность (1-е место в рейтинге "прожорливости"). В свою очередь, сглаживание, построенное на алгоритме FXAA даёт отличную производительность, но ужасно в своей внутриигровой реализации. Именно поэтому было решено прибегнуть к другому способу включения сглаживания — программно, через 3D-настройки драйвера для видеокарты.

Как это сделать пошагово:

  1. Откройте панель управления драйвером вашей видеокарты. В моём случае, этоNVIDIA Control Panel. Для этого наведите указатель мыши на пустое место на рабочем столе, нажмите правую кнопку мыши и выберите "Панель управления NVIDIA". В левой части окна выберите "Управление параметрами 3D". Затем, выберите вкладку "Программные настройки", нажмите кнопку "Добавить" и выберите в появившемся списке GTA 5 (как правило, игры появляются в этом списке после первого своего запуска).
  2. Оставаясь всё на той же вкладке "Программные настройки", выберите в списке пункт "Сглаживание - FXAA" и установите ему значение "Вкл.", остальные параметры сглаживания должны быть установлены следующим образом:

  3. Сохраните изменения, нажав на кнопку "Применить" в нижней правой части окна.
  4. Запустите игру, перейдите в меню графических настроек и отключите внутриигровое сглаживание FXAA (значение "Выкл.").
  5. Начните играть и оцените новое сглаживание. Производительность может упасть, но не так сильно, как в случае со сглаживанием MSAA.

В случае автора данного гайда, FPS упал со средней отметки в ~62 FPS до ~45 FPS(вертикальная синхронизация выключена).

Оптимизация в один клик с помощью GeForce Experience

Сравнительно недавно из недр компании NVIDIA появился на свет мощный инструмент оптимизации игровых настроек под названием GeForce Experience. Эта программа содержит в себе специально созданные профили для более чем 250 игр и позволяет подобрать оптимальные настройки для игры, исходя из производительности вашего компьютера всего за один клик! Помимо этого, программа автоматически умеет проверять наличие обновлений драйвера для вашего видеоадаптера и различного ПО NVIDIA.

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

Загрузить программу можно на официальном сайте NVIDIA, либо же установить её вместе с драйвером для видеокарты. После установки и первого запуска, программа автоматически проверит наличие обновлений для драйвера видеоадаптера и загрузит необходимые профили игр, после чего просканирует вашу систему на наличие игр. По завершении, найденные игры будут показаны в левой части окна программы.

Далее, вам нужно будет лишь выбрать игру из списка (в нашем случае это Grand Theft Auto 5) и в правой части окна нажать на зелёную кнопку "Оптимизировать". Программа выставит оптимальные настройки для игры и сохранит их. Если вы хотите сами определить, что вам требуется — высокая производительность или отличная графика, то нажмите на значок ключа рядом с кнопкой "Оптимизировать" и с помощью ползунка выставьте необходимое соотношение между качеством и производительностью.

Технология DSR в GTA 5

Динамическое суперразрешение позволяет рассчитывать картинку в играх в более высоком разрешении,а затем масштабировать полученный результат до разрешения вашего монитора, обеспечивая графику в4K на HD экране. Технология превосходно работает в GTA 5 и позволяет получить максимально возможно качественную картинку, даже если у вас нет монитора для сверхвысоких разрешений, вроде 4K.С включением технологии DSR графика прибавляет во всём: текстуры становятся чётче, исчезает потребность в сглаживании в виду того, что теперь игровые модели отображаются в сверхвысоком разрешении, вся растительность выглядит более проработанной и чёткой, повышается качество игровых эффектов в целом, значительно преображается детализация дальних планов в игре.

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

DSR активируется и настраивается в 3D-настройках драйвера. Если система подключена к подходящему монитору, то вы можете выбрать множитель по отношению к "родному" разрешению дисплея. Он приводит к появлению в играх соответствующих настроек, которые можно будет выбрать. NVIDIA реализовала специальный фильтр, который позволяет выполнять дробное масштабирование без потери качества картинки.

Поддержка DSR в драйвере будет доступна для мониторов со следующими разрешениями:

То есть, у мониторов 4K такой опции уже не будет. Так что NVIDIA сама продумала, в каких нативных разрешениях DSR имеет смысл, а в каких — нет. В любом случае, даунсемплинг до разрешения 3840 x 2160 пикселей вряд ли сегодня разумен, поскольку видеокарты просто не имеют соответствующих ресурсов для рендеринга в более высоких разрешениях.

Включить данную технологию можно, выбрав в списке параметров приложения строки"DSR - Factors" и "DSR - Smothness" и установив в них желаемые значения.

"DSR - Smothness" позволяет регулировать уровень работы фильтра Гаусса, то есть уровень сглаживания (размытия). Регулировка будет полезна, если вы хотите достичь оптимального качества картинки. Каждый геймер реагирует на уровень сглаживания по-своему, между играми оптимальный уровень DSR тоже отличается. Поэтому, данной настройкой имеет смысл пользоваться, если вы планируете играть с активным динамическим суперразрешением. Мы рекомендуем значение около 30%, как наиболее оптимальное.Также, рекомендуем взглянуть на наше небольшое интерактивное сравнение при использовании DSR:

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

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

Для этого, в Панели управления NVIDIA вам нужно будет перейти в окно настроек для приложения и в строке "Анизотропная фильтрация" установить значение 16X.После этого запустите игру и в меню графических настроек отключите использование анизотропной фильтрации (значение "Выкл.")

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

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

Настройки автора гайда

Наконец, в заключение этого раздела, я хотел бы рассказать вам о том, с какими настройками играет сам автор гайда, т.е. SomeMark, более известный на GTA-Real.com как X-Driver.

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

Однако, всё оказалось даже лучше, чем могло быть. На сегодняшний день конфигурация моего компьютера (который к тому же ещё и является ноутбуком) такова:

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

Как видите, практически все настройки стоят на значении "Оч. выс.", что находится совсем рядом с максимальным значением "Высшая степень" или, проще говоря, "Ультра". Некоторые параметры специально отключены, так как на мой взгляд, их внутриигровая реализация уступает тому, чего можно достичь, если включить их через драйвер видеокарты (см. выше). Такие параметры отмечены соответствующей надписью.

Что же насчёт производительности и количества FPS при таких настройках? Для начала стоит отметить, что у каждого человека есть своя личная цифра, означающая то кол-во FPS, которое комфортно лишь ему. Проще говоря, кто-то привык к 25 FPS и для него это норма, а кто-то зажрался воспринимает лишь 60 FPS.

Мне повезло больше и я из того поколения людей, кто практически всю геймерскую жизнь довольствовался низкой производительностью и низким количеством FPS в игра, ввиду слабого по конфигурации компьютера. Лишь с недавних пор в моём распоряжении появился сравнительно мощный компьютер, который позволяет играть во многие современные игры на довольно высоких настройках. Наконец, перейдём к цифрам:

Стоит упомянуть, что при проведении замеров вертикальная синхронизация была полностью отключена.При её включении через драйвер FPS ограничивается до отметки в 60 FPS. Не случайно я написал цифры для двух видов игры, так как в онлайн-режиме по какой-то причине общее кол-во кадров в секунду ниже, чем в одиночной игре. Данная закономерность наблюдается у всех пользователей, а некоторые вовсе жалуются на особо сильные просадки и специально занижают графику, что поднять уровень кадров в секунду в онлайне до уровня одиночного режима игры. Далее, коротко о том, как проводились замеры.

Среднее значение получено путём езды по Лос-Сантосу в течение 5 минут. В округе Блэйн цифра выше.Максимальное значение выяснено при отплытии от города на катере на расстояние примерно в 1 километр.Минимальное значение зафиксировано при максимально удавшемся мне "мясе" с участием толпы полицейских и их машин, которые в последствии взрывались одна за другой (по возможности одновременно).

Конечно, кто-то может посчитать мои тесты недостоверными, а количество FPS вовсе недостаточным,но думаю, что это не имеет смысла, так как здесь речь идёт о комфортном и играбельном количестве кадров в секунду лично для меня, при этом, графика должна находиться на очень высоком уровне.Если кто-то не согласен — я не против, это ваше дело. Однако, я постарался быть максимально честным.

На этих словах я заканчиваю второй раздел гайда по оптимизации и настройке GTA 5. Надеюсь, вы получили положительные эмоции от прочтения и, самое главное, ценные знания, которые помогут вам в дальнейшем настроить вашу игру так, чтобы получить прекрасную производительность и отличную графику.

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

gta-real.com

Настройка драйверов nVidia. Инструкции. Блог. Портал SzenProgs

Обладатели старых, но апгрейденных компьютеров! Как поживаете?

Я понимаю, что у Вас сейчас 1 или 1,5 гигабайт оперативы, 256 - 512 мегабайт видяхи, но 800 - 1500 мегагерц проца. При таком раскладе, некоторые современные игры у Вас не пойдут. Им скорости процессора хватать не будет. И будут у Вас одни критические ошибки.

Но, не беспокойтесь, не все так плохо. Давайте настроим наши дрова от nVidia (уверен, у 80% пользователей именно она) так, чтобы снизить вероятность вылета.

Скажу по секрету, у меня тоже такая машина. И в Fallout 3 вылеты прекратились, пока.

Начнем. Для начала нужно залезть в панель управления nVidia. Для этого лезем по адресу "Пуск - настройка - панель управления". В списке находим "Панель управления NVIDIA": изображение 1. Есть вероятность, что это будет написано на буржуйском, но, думаю, Вы справитесь. Запускаем этот пункт.

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

Выбираем в окне настройки "Управление параметрами 3D": изображение 2. Здесь лежат основные настройки для работы с 3D изображениями. Все что меняем можно будет вернуть на место одним кликом. Поэтому не боимся и делаем.

Справа в окне находятся те настройки, которые мы будем менять. Они выглядят так: изображение 3.

После изменений жмем кнопку "Применить". Если что-то напортачили - тыкаем "Восстановить", а потом "Применить".

На закладке "Программные настройки" можно задать все эти параметры каждому приложению отдельно.

На этом все. Жду комментов.

Вы можете присоедениться к моему микроблогу в Твиттере @SzenProgs. Буду благодарен, если оцените мой труд, и щелкните по звездочкам ниже.

Google+

Настройка драйверов nVidiaИнструкцииСкрипты, инструкции, справочники

szenprogs.ru

Антиалиасинг и анизотропная фильтрация | Видео+

Геймеры на сегодняшний день являются наиболее активными потребителями всех новых технологий и нововведений в 3D. По большому счёту, мощный 3D-акселератор на сегодняшний день нужен исключительно для игры в последние компьютерные игры с мощными 3D-движками, оперирующие сложными шейдерами различных версий. Сейчас никого уже не удивишь игрой с пиксельными шейдерами.

В сфере 3D уже давно идёт конкурентная битва между двумя столпами производителей графических процессоров: ATI и NVIDIA. Суровая Канада уже давно ведет борьбу против солнечной Калифорнии, и пока конца этому противостоянию не видно, что нам, простым потребителям, конечно, только на руку. Теперь разработать классный движок мало — чтобы иметь успех, нужно заручиться поддержкой либо калифорнийской дивы NVIDIA, либо канадской ATI, благо, теперь и у первой, и у второй есть свои партнёрские программы для разработчиков игр. У NVIDIA такая программа называется «The way it's meant to be played», а у ATI – «Get it in the game». Всё достаточно красноречиво и понятно: NVIDIA говорит, что «играть нужно так», а совсем не эдак, а ATI уверяет, что всё, что мы только ни пожелаем, мы обязательно получим в самой игре.

Если до бесконечности увеличивать количество полигонов в кадре, тем самым получая визуально более красивую для восприятия картинку, то в итоге мы придём к тому, что акселератор не сможет обрабатывать сцену с приемлемым уровнем частоты кадров, но в картинке всё равно будет чего-то не хватать. Лесенки из пикселей всё равно останутся, да и качество текстур не улучшится. Остаются менее явные способы по улучшению качества трёхмерной картинки на мониторе — это анизотропная фильтрация и антиалиасинг. Непосредственно к самому 3D-движку эти техники улучшения изображения не имеют никакого отношения, и сделать сам движок более красивым они, естественно, не могут, однако они могут работать с текстурами и изображением таким образом, что на выходе, то есть на мониторе, мы можем видеть визуально более красивую и мягкую картинку.

Именно на поприще анизотропной фильтрации и антиалиасинга проходит колоссальнейшее количество оптимизаций драйверов как со стороны NVIDIA, так и со стороны ATI.

Антиалиасинг

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

Для начала нужно чётко понимать, что изображение, которое мы с вами можем ежедневно наблюдать на экранах наших с вами мониторов, состоит из так называемых мелких частичек, которые принято называть пикселями. Хорошей аналогией в этом смысле может послужить пример с бумагой в клеточку. Изображение на мониторе — это та же бумага в клеточку, только они в данном случае очень и очень мелкие. Если говорят, что разрешение экрана составляет 1024х768 при 32-битном цвете, то это означает, что по горизонтали на мониторе умещается 1024 точек, а по вертикали — 768. При этом каждая точка может быть закрашена одним цветом из доступных в 32-битной палитре. На данный момент 32-битный цвет — это предел того, чего мы можем добиться на экране компьютера. Лучшие умы человечества (тот же Кармак) уже поговаривают о необходимости перехода на 64-битный цвет и указывают на явные минусы 32-битной палитры. В своё время при переходе с 16-битного на 32-битный цвет данная необходимость была достаточно чётко обоснована и виделись реальные причины, по которым стоило бы перейти на 32 бит. Переход же на 64-битный цвет на сегодняшний день — это скорее излишество. Так же как и в случае с 16 и 32 битами, в своё время придётся достаточно долго ждать, когда акселераторы всех уровней смогут с приемлемой скоростью обрабатывать 64-битный цвет.

Подавляющее большинство статей, в которых затрагиваются тем или иным образом принципы построения изображений в 3D и где ведётся разговор об антиалиасинге, изобилуют простым, но вместе с тем наиболее действенным примером, на котором можно достаточно хорошо понять, что же такое антиалиасинг. Посмотрите на увеличенную надпись «Апгрейд», сделанную в Word’e, а затем просто увеличенную в фотошопе. Не очень хорошо выглядит, не правда ли? По бокам букв видна так называемая гребёнка или, как её ещё называют, «лесенка». В сущности, эта самая «гребёнка» или «лесенка» и есть алиасинг. Можно представить и другой пример в виде геометрического объекта, например, пирамиды. По её краям также хорошо видна всё та же «гребёнка». А теперь посмотрите на другое изображение той же пирамиды, но с увеличенным вдвое разрешением. Выглядит уже значительно лучше, и «гребёнка» практически незаметна. Как уже было сказано выше, данный эффект, сглаживающий «гребёнку», был достигнут за счёт того, что мы увеличили разрешение в 2 раза. Что это означает? Предположим, у нас была отрендерена пирамида с разрешением 200х200 пикселей (выше мы уже подробно прояснили вопрос о том, что такое пиксели и зачем они нужны). Мы увеличили количество точек по вертикали и по горизонтали ровно в 2 раза, то есть получили изображение с разрешением 400 точек по вертикали и 400 точек по горизонтали. Это также означает, что количество точек на нашем объекте, который находился на сцене, увеличилось вдвое. Что это дало применительно к нашему эффекту алиасинга? Очевидно, что он стал минимален, то есть сгладился — ведь количество точек по краям объекта также возросло вдвое. Именно слово «сгладился» является здесь ключевым. Ведь антиалиасинг по-иному называют сглаживанием, что отражает самую суть технологии, которая сглаживает ту самую «лесенку» по краям трёхмерных объектов.

На самом деле, после увеличения разрешения «лесенка» с края пирамиды никуда не делась — она остаётся там по-прежнему. Однако за счёт того, что мы увеличили разрешение (что означает увеличение точек, которые расходуются на отображение пирамиды), эффект «лесенки» сгладился благодаря особенностям человеческого зрения, которое уже менее чётко видит пиксели на крае объекта. Абсолютно понятно, что если увеличивать разрешение ещё и ещё, то эффект алиасинга будет наблюдаться всё в меньшей и меньшей степени. Точнее, человеческий глаз станет замечать его всё в меньшей и меньшей степени, поскольку сам эффект алиасинга никуда не денется. Но так же абсолютно понятно и то, что до бесконечности увеличивать разрешение не получится, ведь мониторы, пусть даже и самые современные, имеют конечные разрешения, причём не такие уж и большие, что не позволит нам постоянно увеличивать количество точек. Проще говоря, простейшего эффекта антиалиасинга можно добиться, всего лишь увеличив разрешение экрана, однако разрешение не может расти до бесконечности. Казалось бы, выхода нет? Однако в действительности он был найден, и основан он всё на той же особенности зрения человека. Этого удалось достичь благодаря плавным переходам цветов на изображении. Фактически визуальное улучшение изображения производится не за счёт физического увеличения разрешения, а за счёт, если можно так выразиться, цветового увеличения разрешения. В данной статье мы не будем описывать алгоритмы вычисления этих точек и не будем вдаваться в глубины математических вычислений, а расскажем лишь о принципе работы такого антиалиасинга. Лесенка на границах объектов видна лишь потому, что чаще всего края трёхмерных объектов довольно сильно выделяются по цвету от остальной картинки и представляют собой тонкие линии в один пиксель. Это можно компенсировать, поставив некоторое количество точек с цветами, вычисляемыми по формуле из значений цвета самого края и точек рядом с этим краем. То есть, если край объекта чёрный, а фон белый, то дополнительная точка рядом с чёрной линией края станет серой. Чем больше этих дополнительных точек около края любого 3D-объекта, тем более гладко выглядят его края и тем меньше заметна лесенка. Данный способ называется краевым антиалиасингом.

Качество антиалиасинга, задаваемое в драйвере видеокарты, как то: 2x, 4x, 6x, 8x означает количество проставляемых дополнительных пикселей вокруг линии, нуждающейся в сглаживании.

Анизотропная фильтрация

Для того чтобы понять, что такое фильтрация, необходимо обладать некоторыми основными знаниями. Мы уже выяснили, что изображение на экране состоит из множества пикселей, количество которых определяется разрешением. Для вывода цветного изображения ваша видеокарта должна определять цвет каждого пикселя. Определяется его цвет посредством наложения текстурных изображений на полигоны, которые расположены в трёхмерном пространстве. Текстурные изображения состоят из пикселей, вернее, текселей, то есть тексель — это пиксель двухмерного изображения, наложенного на 3D-поверхность. Главная дилемма заключается в следующем: какой тексель или тексели определяют цвет пикселя на экране. Для представления проблемы фильтрации давайте представим одну картину. Допустим, что ваш экран – это плита с множеством круглых отверстий, каждое из которых является пикселем. Для того чтобы определить, какой цвет имеет пиксель относительно трёхмерной сцены, расположенной за плитой, достаточно просто посмотреть в одно из отверстий. А теперь представим луч света, который проходит через одно из отверстий и попадает на наш текстурированный полигон. Если последний расположен параллельно относительно отверстия, через которое проходит световой луч, то световое пятно будет иметь форму окружности. В противном случае, если полигон расположен не параллельно к отверстию, световое пятно искажается и имеет эллиптическую форму. Мы думаем, что многие читатели в это время задаются одним вопросом: «как связаны все эти плиты, отверстие, луч света с проблемой определения цвета пикселя?» Внимание! Ключевая фраза: все полигоны, расположенные в световом пятне, определяют цвет пикселя. Всё вышеизложенное и есть те необходимые базовые знания, которые нужны для того, чтобы понять различные алгоритмы фильтрации.

А теперь, чтобы вы лучше поняли, для чего нужна фильтрация, рассмотрим происходящие процессы на примере легендарной «Quake 3 Arena». Представьте какой какой-нибудь коридор с множеством квадратов и различных орнаментов (благо, в «Quake 3 Arena» этого хватает). Орнамент в начале коридора сильно детализирован, а ближе к концу коридора (горизонту) элементы орнамента становятся всё меньше и меньше, т.е. они отображаются меньшим числом пикселей. В результате теряются детали типа швов между элементами орнамента, что, соответственно, приводит к ухудшению качества изображения. Проблема заключается в том, что драйвер графической карты не знает, какие детали в текстуре являются важными.

Point Sampling

Point Sampling (поточечная выборка) — самый простой способ определения цвета пикселя. Этот алгоритм основан на текстурном изображении: выбирается всего один тексель, который ближе всех расположен к центру светового пятна, и по нему происходит определение цвета пикселя. Нетрудно догадаться, что это совершенно не верно. Во-первых, цвет пикселя определяется несколькими текселями, а мы выбрали только один. Во-вторых, форма светового пятна может измениться, а алгоритм не принимает это во внимание. Главным недостатком поточной выборки является тот факт, что когда полигон расположен близко к экрану, количество пикселей будет значительно выше, чем текселей, из-за чего качество изображения очень сильно пострадает. Так называемый эффект блочности, как мы полагаем, многие могли наблюдать в старых компьютерных играх, например, в том же легендарном «Doom».

У Point Sampling есть преимущество. Из-за того, что определение цвета пикселя осуществляется всего по одному текселю, данный метод не критичен к пропускной способности памяти, а это автоматически даёт данному способу фильтрации колоссальные диведенды в том плане, что на фильтрацию по данной схеме затрачивается очень мало ресурсов 3D-акселератора.

Bi-Linear Filtering

Bi-Linear Filtering — билинейная фильтрация, основанная на методе использования интерполяционной техники. Для определения нужных текселей используется основная форма светового пятна, то есть круг. В нашем примере с кругом последний аппроксимируется 4 текселями. Как видим, здесь дела обстоят несколько лучше, чем с Point Sampling. Билинейная фильтрация использует уже 4 текселя. Изображение получается более качественным, блочность отсутствует, однако близкие к экрану полигоны выглядят расплывчато, и связано это с тем, что для интерполяции необходимо большее количество текселей, нежели доступные четыре.

Расплывчатость — отнюдь не самая главная проблема билинейной фильтрации. Дело в том, что аппроксимация выполняется корректно лишь для объектов, расположенных параллельно экрану или точке наблюдения, в то время как 99% объектов в любой компьютерной игре расположены непараллельно к точке наблюдения. Отсюда можно сделать вывод, что 99% объектов будут аппроксимироваться неправильно. Возьмём, к примеру, наш круг – полигон расположен непараллельно относительно точки наблюдения, стало быть, мы должны аппроксимировать эллипс, а мы аппроксимируем круг, что крайне неверно. Ко всему прочему билинейная фильтрация значительно требовательней к пропускной полосе данных памяти, что, в общем-то, более чем логично, учитывая то, что билинейная фильтрация использует уже 4 текселя для определения цвета пикселя.Как видим, билинейная фильтрация выглядит несколько лучше, нежели Point Sampling. И всё же она очень далека от идеала.

Tri-Linear filtering

Tri-Linear filtering — трилинейная фильтрация, представляет собой симбиоз билинейной фильтрации и mip-текстурирования. Прежде чем говорить об алгоритме работы трилинейной фильтрации, давайте выясним, что такое МIP-текстурирование. MIP-текстурирование, или mip-mapping, — это метод уменьшения объёма вычислений, необходимых для точного наложения текстурного изображения на полигон. По сути, мипмеппинг выполняет те же задачи, что и Point Sampling, но делает это на порядок лучше. MIP-текстурирование призвано избавить нас от ухудшений изображений, когда несколько текселей накладываются на один пиксель. Посмотрим на проблему глобальней и попробуем найти решение всему этому. Для того чтобы правильно вывести пиксель на экран, необходимо скомбинировать значения всех текселей, которые и будут накладываться на этот пиксель. Но пропускная способность памяти не бесконечна, а это огромнейший обьём работы, который неблагоприятно отразится на быстродействии вашей видеокарты. Mip-mapping способствует снижению объёмов этой работы. Метод MIP-текстурирования основан на генерации и хранении множества версий исходного текстурного изображения. Эти версии имеют большое количество разрешений, каждое из которых всё меньше и меньше исходного. Во время текстурирования пикселя вам достаточно выбрать версию текстурного изображения. В вашем распоряжении есть 4 близлежащих текселея из текстурного изображения, больших по размеру, чем пиксель, и столько же текселей, меньших по размеру, чем пиксель. По сути, mip-уровни представляют собой заранее рассчитанные, более маленькие версии исходной текстуры, из-за чего обеспечивается лучшая аппроксимация.Итак, мы выяснили, что такое mip-mapping, теперь вернёмся к нашей трилинейной фильтрации. Как мы уже говорили, Tri-Linear filtering представляет собой симбиоз билинейной фильтрации и mip-текстурирования. По сути, билинейная фильтрация производится на двух mip-уровнях. А в итоге мы имеем 2 текселя, по одному для каждого mip-уровня. Цвет пикселя определяется при помощи интерполяции по цветам двух mip-текстур.

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

Anisotropic filtering

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

Вполне очевидно — для того чтобы добиться лучшего качества, необходимо использовать все пиксели светового пятна с усреднённым значением. Существуют техники фильтрации, которые применяют от 16 до 32 текселей для определения цвета пикселя. Мы также должны учитывать тот факт, что форма светового пятна изменяется вместе с изменением положения полигона относительно точки наблюдения. Собственно говоря, этим и предлагает пользоваться анизотропная фильтрация.

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

В видеорешениях, использующих тайловую (тайл, говоря простым языком, – участок изображения опредёленного размера, как правило, 32х32 пикселя) архитектуру, благодаря применению тайлов, существенно экономятся ресурсы полосы пропускания памяти, что позволяет использовать анизотропную фильтрацию без значимых потерь быстродействия. При помощи анизотропной фильтрации можно получить лучшее качество изображения. Оно достигается за счёт более точного представления текстур и улучшенной глубины детализации.

Уровень анизотропной фильтрации определяется числом текселей, которые обрабатываются при вычислении конечного пикселя. Современные графические решения позволяют выставить уровень фильтрации в драйвере. Самыми распространёнными уровнями фильтрации являются 2x (16 текселей), 4x (32 текселя), 8x (64 текселя) и 16x (128 текселей). Очевидно, что при повышении уровня анизотропной фильтрации нагрузка на полосу пропускания памяти также увеличивается, а это неминуемо сказывается на производительности.

Оптимизации анизотропной и трилинейной фильтраций

Компании-разработчики графических чипов ATI и NVIDIA всё время стараются выжать дополнительную производительность из своих продуктов. Что, в общем-то, очевидно и оправдано — конкуренцию между двумя гигантами-производителями графических процессоров никто не отменял. Для достижения своих целей вендоры применяют различные оптимизации, которые позволяют увеличить производительность графических решений. Однако зачастую оптимизации повышают производительность, но снижают качество картинки. Увы, но поговорка «сделать быстрей — не значит сделать лучше» очень часто актуальна для ситуации с различными оптимизациями ATI и NVIDIA. Разработчики пытаются играть на всё тех же особенностях зрения человека и стараются повысить производительность за счёт слабозаметного ухудшения качества изображения.

Возьмём, к примеру, брилинейную фильтрацию. Нет-нет, мы не оговорились, именно брилинейная фильтрация. Так сказать, новый вид, который появился благодаря упорным стараниям вендоров. Брилинейная фильтрация представляет собой смешанный режим фильтрации между билинейной и трилинейной — область, в которой граничат соседние mip-уровни, и которая, собственно говоря, подвергается трилинейной фильтрации, была уменьшена. Вследствие этого удалось поднять производительность, что вполне ожидаемо, ведь мы фильтруем гораздо меньше. При этом качество изображения становится хуже, однако ухудшение качества в данном случае явно оправдано, если учесть значительный выигрыш в производительности. Это отчётливо видно, если сравнивать изображения, полученные с помощью полной трилинейной фильтрации.

Брилинейную фильтрацию впервые применила NVIDIA на своих видеокартах GeForce FX 5xxx Новые видеокарты GeForce 6xxx также используют брилинейную фильтрацию, однако компания NVIDIA после критики и различных дискуссий в многочисленных конференциях добавила возможность отключения оптимизации.

В недалёком прошлом продукты компании ATI славились более высоким качеством картинки, нежели таковые от NVIDIA. Однако с выходом графического процессора Radeon 9600 всё изменилось – последний, как и более новое решение Radeon X800, также использует брилинейную фильтрацию. Однако, в отличие от NVIDIA, ATI не соизволила не только объяснить процедуру фильтрации, но и не признала сам факт использования оптимизаций.

Компания ATI пошла на хитрость: драйверы переключаются на полную трилинейную фильтрацию при использовании цветных mip-текстур. Именно последние применяются в стандартных тестах качества, которые используют обозреватели и тестировщики.Однако находчивые ребята с сайта Computerbase обнаружили, что в компьютерной игре «Call Of Duty» X800 даёт меньшую частоту кадров при использовании цветных mip-текстур. После чего обозреватели Computerbase провели сравнение качества изображения. Как оказалось, при применении обычных текстур Radeon X800 использует брилинейную фильтрацию. При употреблении цветных текстур в «Call Of Duty» (1600х1200) общий показатель FPS Radeon Х800 падает на 11-13 fps.Самое интересное, что ATI заявляет об использовании полноценной трилинейной фильтрации и рекомендует тестировщикам отключать оптимизации у конкурентов для обеспечения честного сравнения.

В интервью популярному сайту Toms Hardware Guide компания ATI всячески уходила от конкретного ответа, утверждая, что X800 использует полноценную трилинейную фильтрацию. На этом оптимизации от компании ATI не заканчиваются. Так, продукты канадской фирмы ATI используют ещё один вид оптимизации, который называется «stage optimization» — оптимизацией ступени. Метод оптимизации основан на применении «трилинейной» (брилинейной) фильтрации только к первой ступени текстуры (0). Остальные ступени 1-7 фильтруются простым билинейным методом.

Стоит отметить, что во многих играх это не критично, поскольку верхние ступени текстур являются либо картами неровностей, либо картами освещения, для которых полноценная фильтрация не критична, поэтому ухудшения изображения вы попросту не заметите. Однако есть и исключения. Популярная компьютерная игра Unreal Tournament использует карты деталей с высоким разрешением на ступенях 1-7, поэтому потери в качестве неизбежны.

Также стоит оговориться, что эта оптимизация функционирует только при насильственном включении анизотропной фильтрации в драйверах вашей видеокарты. Если вы оставляете выбор приложению (by application), то обеспечивается полноценная «трилинейная» (брилинейная) фильтрация ко всем ступеням текстуры.Компания NVIDIA также стала использовать эту оптимизацию, которая появилась в драйверах версии 51.xx для карт GeForce 5xxx.

Адаптивная анизотропная фильтрация — ещё одна вариация на тему оптимизаций. Её уже давно используют продукты компании ATI. NVIDIA также не отстаёт — в GeForce 6800 эта оптимизация частично реализована.

Алгоритм адаптивной анизотропной фильтрации заключается в том, что поверхности 3D-изображения получают различный уровень анизотропной фильтрации в точке наблюдения. Такой подход позволяет существенно экономить вычислительные ресурсы и тем самым значительно повышать общий fps.

Использование такого метода фильтрации оправданно. Представьте себе сцену из какой-нибудь компьютерной игры: скажем, ваш герой стоит лицом к стене. Фильтровать стену с уровнем анизотропной фильтрации 16х не имеет смысла, то есть картинка будет такой же, как и с 2х. Идея адаптивной анизотропной фильтрации очевидна: «сэкономь вычислительную мощность там, где это можно, дабы последняя не расходовалась впустую».

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

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

/>

video-practic.ru


Prostoy-Site | Все права защищены © 2018 | Карта сайта