Оригинал материала: https://3dnews.ru./642640

Безумие без тормозов: тестирование 27 видеокарт в Far Cry 3

Графический движок Far Cry 3

#Графический движок Far Cry 3

Far Cry 3 построен на движке Dunia 2, ведущего родословную от первой версии CryEngine, которая лежала в основе самого первого Far Cry, а следующие версии используются в серии Crysis. Но, несмотря на именитое родство, а также всю привлекательность Far Cry 3, нельзя не признать, что эта игра больше берет проработанным дизайном, чем передовыми технологиями и богатством графических эффектов. Far Cry 3 поддерживает API DirectX 9 либо DX11 (промежуточный вариант в виде DirectX 10 недоступен), но почти все красоты игры не выходят за рамки возможностей первого. Немногие заметные глазу преимущества, которые можно извлечь из DirectX 11, сводятся к полноэкранному сглаживанию мощностью вплоть до 8x и выбору из трех различных механизмов Ambient Occlusion. Внимательные игроки также могут заметить работу технологии Contact Hardening Shadows: жесткость тени варьируется в зависимости от расстояния между ее источником и затененной поверхностью.

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

Возьмем персонажей. Постоянные читатели наверняка помнят, что в свое время NVIDIA в качестве очередной виртуальной красотки, демонстрирующей возможности GeForce 8800 GTX, избрала отрендеренную копию некой модели по имени Adrianne Curry. В 2006 году результат действительно восхищал, в то время как в большинстве игр физиономии персонажей все еще выглядели довольно-таки грубо. Ну а теперь уже красота виртуальной Adrianne Curry уступает внешности Citra — главной обольстительницы из истории Far Cry 3.

Что касается красот природы, то вызывает восхищение тот изящный и эффективный метод, с помощью которого разработчики сделали игровой мир столь богатым и реалистичным. Поначалу картинка просто вызывает восторг и поглощает зрителя целиком, но если присмотреться к деталям, то выяснится, что пейзажи острова довольно однообразные и простые. Нельзя не сравнить Far Cry 3 с первым Crysis, действие которого также происходит на тропическом острове. И в плане проработки окружения сравнение будет не в пользу новинки. Хотя, конечно, это не только или даже, быть может, не столько недостаток Far Cry 3, сколько свидетельство тому, насколько Crysis тогда опередил свое время.

Но сравнение видеоряда Crysis и Far Cry 3 раскрывает и главное преимущество последнего. Это одна из первых игр, которые используют технологию Global Illumination, и с чрезвычайно эффектным результатом. Работа GI в Far Cry 3 складывается из двух основных компонентов: прямого освещения от небесной сферы и рассеянного света, отраженного от элементов игрового окружения.

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

А данные о распределении света, отражающегося от близко расположенных поверхностей, и видимости неба из определенной точки (зонда – Probe) вычисляется на CPU в «офлайне» (на схеме — Probe Baking), что делает технологию относительно нетребовательной по сравнению с полностью «онлайновой» реализацией Global Illumination. И это, возможно, не последняя причина того, что движок допускает лишь небольшие разрушения игровой среды.

Затем уже в игре из сочетания заранее просчитанной информации и динамического небесного освещения (Relighting) формируются объемные текстуры, с помощью которых GPU придает объектам ту или иную освещенность и оттенок.

Таким образом и получаются сцены с роскошными реалистичными тенями, которыми так привлекает Far Cry 3.

Наконец, в дополнение к описанному алгоритму, версия Far Cry 3 для PC оперирует информацией о распространении света от локальных источников для того, чтобы аппроксимировать динамическое освещение, создаваемое фарами автомобиля, факелами и прочим.

#Настройки графики Far Cry 3

DirectX 9 vs DirectX 11

Итак, Far Cry 3 предлагает выбор между API DirectX 9 и DX 11. Последний вариант открывает доступ к выбору режима полноэкранного сглаживания и алгоритма Ambient Occlusion. Последняя технология выполняет ту же задачу, что и Global Illumination, только в меньшем масштабе: аппроксимирует распределение отраженного света, что лучше всего проявляется в затенении углубленных участков геометрии (ниши, углы и т.д.) по сравнении с выдающимися.

Польза антиалиасинга в Far Cry 3 не подлежит обсуждению, особенно потому, что наш остров головорезов — «весь покрытый зеленью, абсолютно весь». MSAA в сочетании с TSAA (применением суперсемплинга к прозрачным текстурам, из которых состоит обильная тропическая листва) делает картинку куда более четкой, нежели в режиме DirectX 9, хотя и ценой колоссального падения производительности. Что поделаешь, такова неприятная особенность доминирующего сегодня метода отложенного рендеринга (Deferred Rendering).

А вот выбор между методами Ambient Occlusion неоднозначнен. В режиме DirectX 9 по умолчанию доступен только относительно старый и неточный метод – SSAO (Screen space ambient occlusion), при переходе к DirectX 11 появляются еще два варианта: HBAO (Horizon-Based Ambient Occlusion) и HDAO (High Definition Ambient Occlusion).

Как видно по скриншотам, использование SSAO производит довольно грубый результат, резко выделяя стыки полигонов и накладывая обширные тени на поверхности.

SSAO

Освещение с использованием HBAO также выглядит не очень естественно. Хотя картинка и не столь темная, как при SSAO, в стыках полигонов появляются резкие короткие тени, за счет чего клочки травы на открытых пространствах выглядит как подпаленные, а в закрытых помещениях HBAO придает графике Far Cry 3 отдаленное сходство с мультяшным стилем Borderlands 2.

HBAO

Наиболее сбалансированные тени производит метод HDAO, подчеркивая объем в тех местах, где нужно, и не создавая странных графических артефактов. Для расчета данных HDAO движок Far Cry 3 задействует API DirectCompute.

HDAO

GPU от AMD и NVIDIA с теми версиями драйверов, которые использовались в тестировании, работают с тремя режимами Ambient Occlusion с примерно одинаковой эффективностью: разница очень невелика.

Предустановки детализации

Far Cry 3 позволяет в широких пределах изменять детализацию игрового окружения. Предлагаются пять предустановленных настроек: Low, Medium, High, Very High и Ultra, от которых также сильно зависит и производительность. Откатив графику до уровня Low, можно сделать Far Cry 3 играбельным даже на относительно старых системах, хотя при этом и пропадет добрая часть труда дизайнеров.

Low

Medium

High

Very High

Ultra

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

Изображение, приближенное к замыслу авторов игры, появляется на экране только в режиме High, при котором наблюдается неплохой компромисс между красотой и быстродействием. В более низких режимах открытые пространства Far Cry 3 становятся похожи на примитивные (а когда-то восхищавшие) декорации TES: Oblivion.

Low

Medium

High

Very High

Ultra

Low

Medium

High

Very High

Ultra

Low

Medium

High

Very High

Ultra

Low

Medium

High

Very High

Ultra

Low

Medium

High

Very High

Ultra

Тестирование. Выводы

#Участники тестирования

Видеокарты на GPU NVIDIA

  • NVIDIA GeForce GTX TITAN (836/6008 МГц, 6 Гбайт)
  • NVIDIA GeForce GTX 690 (915/6008 МГц, 4 Гбайт)
  • NVIDIA GeForce GTX 680 (1006/6008, 2 Гбайт)
  • NVIDIA GeForce GTX 670 (915/6008 МГц, 2 Гбайт)
  • NVIDIA GeForce GTX 660 Ti (915/6008 МГц, 2 Гбайт)
  • ZOTAC GeForce GTX 660 (980/6008 МГц, 2 Гбайт)
  • NVIDIA GeForce GTX 650 Ti (928/5400 МГц, 1 Гбайт)
  • ZOTAC GeForce GT 640 (902/1782 МГц, 2 Гбайт)
  • NVIDIA GeForce GTX 590 (607/3414 МГц, 3 Гбайт)
  • NVIDIA GeForce GTX 580 (772/4004 МГц, 1,5 Гбайт)
  • NVIDIA GeForce GTX 570 (732/3800 МГц, 1,28 Гбайт)
  • NVIDIA GeForce GTX 560 Ti (823/4008 МГц, 1 Гбайт)
  • Palit GeForce GTX 560 (810/4004 МГц, 2 Гбайт)
  • Palit GeForce GTX 550 Ti (900/4104 МГц)

Видеокарты на GPU AMD

  • 2 x AMD Radeon HD 7970 GHz Edition (1050/6000 МГц, 3 Гбайт)
  • AMD Radeon HD 7990 (1000/6000 МГц, 6 Гбайт)
  • AMD Radeon HD 7970 GHz Edition (1050/6000 МГц, 3 Гбайт)
  • AMD Radeon HD 7970 (925/5500 МГц, 3 Гбайт)
  • AMD Radeon HD 7950 (800/5000 МГц, 3 Гбайт)
  • AMD Radeon HD 7870 (1000/4800 МГц, 2 Гбайт)
  • AMD Radeon HD 7850 (860/4800 МГц, 2 Гбайт)
  • AMD Radeon HD 7770 (1000/4500 МГц, 1 Гбайт)
  • AMD Radeon HD 7750 (800/4500 МГц, 1 Гбайт)
  • AMD Radeon HD 6990 (880/5000 МГц, 4 Гбайт)
  • AMD Radeon HD 6970 (880/5500 МГц, 2 Гбайт)
  • AMD Radeon HD 6950 (800/5000 МГц, 2 Гбайт)
  • AMD Radeon HD 6870 (900/4200 МГц)
  • AMD Radeon HD 6850 (775/4000 МГц)
  • AMD Radeon HD 6790 (840/4200 МГц)

#Методика тестирования

Конфигурация тестового стенда
CPU Intel Core i7-3960X @ 4,6 ГГц (100x46)
Материнская плата ASUS P9X79 Pro
Оперативная память DDR3 Kingston HyperX 4x2 Гбайт @ 1600 МГц, 9-9-9
ПЗУ Intel SSD 520 240 Гбайт
Блок питания IKONIK Vulcan, 1200 Вт
Охлаждение CPU Thermalright Silver Arrow
Корпус CoolerMaster Test Bench V1.0
Операционная система Windows 7 Ultimate X64 Service Pack 1
ПО для карт AMD
AMD Catalyst 13.1 WHQL + Catalyst Application Profiles 12.11 CAP2
ПО для карт NVIDIA 314.07 (GeForce GTX 500–600), 314.09 (GeForce GTX TITAN)
Настройки AMD Catalyst Control Center
Antialiasing Use application settings
Anisotropic Filtering Use application settings
Tesselation Use application settings
Catalyst A.I., Texture Filtering Quality Quality, Enable Surface Format Optimization
Mipmap Detail Level Quality
Wait for V-Sync Off, unless application specifies
Anti-Aliasing Mode Multi-sample AA
Direct3D Settings, Enable Geomery Instancing On
Triple buffernig Off
Настройки NVIDIA Control Panel
Ambient Occlusion Off
Anisotropic Filtering Application-controlled
Antialiasing — Gamma correction On
Antialiasing — Mode Application-controlled
Antialiasing — Settings Application-controlled
Antialiasing — Transparency Off
CUDA — GPUs All
Maximum pre-rendered frames 3
Multi-display/mixed-GPU acceleration Multiple display performance mode
Power management mode Adaptive
Texture filtering — Anisitropic sample optimization Off
Texture filtering — Negative LOD bias Allow
Texture filtering — Quality Quality
Texture filtering — Trilinear optimization On
Threaded optimization Auto
Triple buffering Off
Vertical sync Use the 3D application settings

Поскольку в Far Cry 3 нет встроенного бенчмарка, производительность пришлось оценивать с помощью утилиты FRAPS. Благо, чтобы измерить фреймрейт вручную, в игре есть подходящий эпизод с достаточно длинной, полностью повторяющейся и графически насыщенной сценой: поездка на джипе в начале миссии Secure the Outpost.

Тестирование проводилось при трех вариантах графических настроек. Самый ресурсоемкий режим включает детализацию по максимуму, DirectX 11 и полноэкранное сглаживание MSAA 4x. Режим с более простой графикой включает максимальную детализацию, но в сочетании с DirectX 9, а значит — без сглаживания. Наконец, худшая графика представлена комбинацией DX9 с предустановкой детализации High.

В двух более качественных режимах видеокарты тестировались при разрешении 1920х1080 и 2560х1440, в самом простом — при разрешении 1680х1050 и 1920х1080.

Не каждая видеокарта или конфигурация SLI/CFX проходила тестирование во всех трех режимах. Для отдельно взятого участника представлены результаты в самом ресурсоемком режиме, где он набирает не меньше 30 FPS хотя бы в минимальном разрешении. А если в максимальном разрешении того же режима фреймрейт опускается ниже 30 FPS, видеокарта дополнительно отправляется на тестирование в более простом режиме. Наконец, те участники, которые опустились ниже 30 FPS в минимальном разрешении и самом младшем режиме, полностью выбывали из соревнования.

#Результаты тестирования

Ultra, DirectX 11, MSAA 4x, HBAO, 1920х1080

  • Для игры с максимальными настройками и антиалиасингом Far Cry 3 требует весьма мощного железа. Из всех видеокарт с единственными GPU только GeForce GTX TITAN в состоянии обеспечить частоту смены кадров выше 60 FPS даже при разрешении 1920х1080.
  • Тандем Radeon HD 7970 GHz Edition получил одинаковый результат с «Титаном», а GeForce GTX 690 — лишь самую малость лучше.
  • HD 7990 работает более медленно, чем две одиночных карточки, и уступает как GTX 690, так и GTX TITAN.
  • Даже GeForce GTX 680 и Radeon HD 7970 GHz Edition набрали только 45,2 и 42,2 FPS соответственно.
  • Старые двухпроцессорные флагманы — GTX 590 и HD 6990 — показали несколько лучший результат, но тоже не достигли 60 FPS в 1920х1080, необходимых для по-настоящему комфортной игры.
  • Играбельный минимум, 30 FPS, обеспечивают GeForce GTX 660 и Radeon HD 7870. Из карт предыдущего поколения нужен как минимум GeForce GTX 570. А вот Radeon HD 6970 уже не достиг этой отметки и отправился на тестирование в более легком графическом режиме.
  • Примечательно, что HD 7950 едва превысил отметку в 30 FPS, а HD 7970 ощутимо отстает от своего родственника с индексом GHz Edition. Очевидно, что игра эффективно нагружает GPU, и повышенная тактовая частота здесь приветствуется.

Ultra, DirectX 11, MSAA 4x, HBAO, 2560х1440

  • При таком разрешении планка 60 FPS оказалась недоступной даже для GeForce GTX 690 или двух Radeon HD 7970 GHz Edition.
  • Результаты этих систем очень близкие, а вот HD 7990 несколько отстает.
  • Нагрузка на GPU при разрешении 2560х1440 более серьезная, поэтому TITAN уступает пальму первенства двухпроцессорным системам.
  • Из более слабых видеокарт перешагнуть отметку 30 FPS смогли только GTX 590 и HD 6990. Даже GTX 680 и HD 7970 GHz Edition показывают только 28 кадров в секунду.

Ultra, DirectX 9, MSAA Off, SSAO, 1920х1080

  • Фреймрейт на GTX 680 и HD 7970 GHz Edition уже легко переваливает за 70 FPS, с преимуществом GTX 680.
  • Требования к минимальной графической мощи без антиалиасинга более либеральные. Для игры с 30 FPS достаточно GTX 650 Ti или HD 7770.
  • Из более старых моделей подойдут GTX 570 и HD 6870.

Ultra, DirectX 9, MSAA Off, SSAO, 2560х1440

  • В 2560х1440 пальму первенства у GTX 680 перехватил Radeon HD 7970 GHz Edition, хотя фреймрейт у обеих видеокарт не достигает 60 FPS.
  • Повышение разрешения приводит к драматическому падению производительности, и многие участники опустились ниже отметки 30 FPS. Самые слабые модели, которые остались на плаву, — это GTX 660, HD 7850 и GTX 570.
  • Предыдущий однопроцессорный флагман AMD — Radeon HD 6970 — играбельного фреймрейта уже не обеспечивает.

High, DirectX 9, MSAA Off, SSAO, 1680x1050

  • Radeon HD 6970 GHz Edition почти добился 60 FPS в этом режиме.
  • Неплохие результаты принадлежат GTX 650 Ti и HD 6950.
  • Минимально комфортный фреймрейт в состоянии обеспечить GTX 550 Ti, а также и HD 7750, что является хорошим достижением для столь компактной и экономичной видеокарты. Среди старых моделей этого уровня достигла HD 6790.

High, DirectX 9, MSAA Off, SSAO, 1920х1080

  • Повышение разрешения с 1680х1050 до 1920х1080 не столь сильно бьет по производительности, как переход от 1920х1080 к 2560x1440, поэтому более-менее комфортно играть все еще можно на Radeon HD 6850 или GTX 560 Ti. GTX 550 Ti лишь немного не дотянул до этой отметки.

#Выводы

Far Cry 3 во всем своем великолепии является весьма ресурсоемкой игрой. В массовом на сегодняшний день разрешении 1920х1080 при максимальных настройках детализации комфортную частоту смены кадров (около 60 FPS) может обеспечить только видеокарта классом "выше среднего": Radeon HD 7950 или GeForce GTX 660 Ti. Владельцы GeForce GTX 580 пока тоже могут обойтись без апгрейда.

И это еще без полноэкранного сглаживания. Применение MSAA 4x для большинства видеокарт снижает фреймрейт почти в два раза, и вот уже выбор сводится к GeForce GTX TITAN, GTX 690 или двум Radeon HD 7970 в режиме CrossFireX. Те, кто раньше вложился в GeForce GTX 590, также будут чувствовать себя более-комфортно. То же относится и к игре в разрешении 2560х1440 с выключенным антиалиасингом. Ну а для сочетания 2560x1440 и MSAA 4x годятся только самые мощные конфигурации с двумя или даже тремя GPU.

С другой стороны, если отказаться от сглаживания и пойти на разумный компромисс в детализации графики, то Far Cry 3 вполне вытягивает карта среднего класса, вроде GeForce GTX 660 или Radeon HD 7850, а из старичков – HD 6950 или GTX 570. На худой конец, будет достаточно и самых слабых моделей, которые еще вписываются в категорию игровых: HD 7750 или GTX 550 Ti. Они поддерживают фреймрейт на уровне 30 FPS при установке детализации High в разрешении 1680х1050.



Оригинал материала: https://3dnews.ru./642640