FarCry v1.2 под микроскопом
Нечасто новая игра оказывается непохожей на всё, что выходило до неё. Но FarCry можно смело причислить к таким играм. Она сочетает интересный сюжет с умопомрачительной графикой. Конечно, за красоту приходится платить, и в этом случае подобной платой являются требования к “железу”.
Самую суровую нагрузку в FarCry испытывает видеокарта. 3D-движок игры написан специально для DirectX 9, и он в немалой степени использует пиксельные и вершинные программы 2.0. То есть ускоритель для DX9 является просто необходимым условием. Конечно, игра поддерживает и старые карты DirectX 8, но при этом качество изображения значительно ухудшается.
Игроки, пожелавшие получить максимальный уровень качества в этой игре, должны обзавестись GeForce FX 5900/5950 или ATi Radeon 9800. Однако даже с такими мощными картами не надейтесь получить больше 1024×768. Конечно, теоретическая возможность включить полноэкранное сглаживание и анизотропную фильтрацию существует, но на сложных сценах картинка будет двигаться рывками.
Идеальным графическим ускорителем для этой игры будут карты последнего поколения, такие как GeForce 6800 и ATi X800, поскольку производительность шейдеров у них намного выше, чем у предшествующих моделей. Тогда вы сможете играть в FarCry на высоком разрешении и с опциями улучшения качества картинки.
FarCry v1.1
Игра FarCry использует различные пути кода для карт nVidia и ATi, причём каждый из них оптимизирован под свою архитектуру. Из-за сравнительно низкой производительности при использовании полной точности вычислений с плавающей запятой разработчику CryTek пришлось снизить точность в пути кода для карт nVidia FX 5xxx. В результате качество картинки на линейке FX 5xxx оказалось хуже качества карт ATi Radeon с поддержкой DX9.
С выпуском карт GeForce 6800 nVidia разрешила эту проблему. Карты демонстрируют полную производительность даже при FP-вычислениях с 32-битной точностью. Кроме того, карты nVidia уже поддерживают DirectX 9.0c, включая Shader Model 3.0 (см. Shader Model 3.0). SM 3.0 позволяет реализовывать более сложные программы-шейдеры, включая инструкции ветвления в коде. Новое поколение карт ATi, с другой стороны, поддерживает только Shader Model 2.0.
Однако до сих пор GeForce 6800 не могла показать свой потенциал в FarCry: карта явно обгоняла предшествующую модель FX 5950 Ultra по частоте кадров, но качество картинки заметных улучшений не претерпело. И хотя игровой движок уже готов для Shader Model 3.0, в версии v1.1 реализация новой модели была ещё не завершена. С выходом нового обновления до v1.2 ситуация изменилась.
FarCry v1.2
Кроме исправлений игрового процесса, новый патч v1.2 содержит также ряд изменений, хотя большинство из них так или иначе связано с линейкой карт nVidia GeForce 6800. Благодаря добавлению нового пути кода известные проблемы с качеством исчезли без ощутимого падения производительности. Кроме всего прочего, игра v1.2 также поддерживает Shader Model 3.0.
Хотя мы по-прежнему не имеем детальной информации об изменениях, мы всё же можем привести некоторые примеры. Shader Model 3.0 позволяет ускорить рендеринг деревьев и травы на уровнях “Training” и “Regulator”. На картах “Research” и “Volcano”, SM 3.0 позволяет осуществить попиксельное освещение за один проход вместо нескольких для каждого источника света. nVidia указывает увеличение производительности для SM 3.0 вплоть до 35%, по сравнению с SM 2.0.
Но для того, чтобы вы смогли использовать все преимущества DirectX 9.0c, нужно выполнить ряд условий. Во-первых, драйвер видеокарты должен поддерживать SM 3.0. К счастью, nVidia выслала нам модифицированную версию драйвера ForceWare v61.45, который уже поддерживает SM 3.0. Во-вторых, вам нужен сам DirectX 9.0c, который пока нельзя скачать отдельно – только в составе Windows XP Service Pack 2 Beta RC2. Как только вы выполните указанные требования, в FarCry можно включить использование SM 3.0 с помощью консоли.
Перед тем, как мы непосредственно перейдём к преимуществам поддержки SM 3.0, давайте взглянем на качество картинки. Как помнят наши читатели, карты nVidia GeForce 6800 испытывали некоторые проблемы с качеством картинки в версии игры v1.1 (подробнее можно прочитать здесь: Shader Quality – FarCry).
Качество изображения
Качество картинки в FarCry является очень важным для nVidia. До сих пор в версии игры v1.1 качество картинки уступало платам ATi DirectX 9. С выпуском нового патча v1.2 эта проблема, наконец-то, была решена, по крайней мере, на картах линейки GeForce 6800. Хотя качество изображения на линейке карт GeForce FX 5xxx также улучшилось, оно всё равно не достигает того же уровня, как на DX9-картах Radeon и GF 6800.
Мы не смогли найти какие-либо графические ошибки при использовании SM 3.0. В то же время, мы обнаружили небольшой огрех на уровне “Volcano” при использовании X800 с картами Catalyst 4.6 (с включением 4xFSAA и 4xAF): в зависимости от перспективы некоторые области сцены не отфильтровываются правильно. Небольшое изменение перспективы приводит к исчезновению этого артефакта. Как мы полагаем, этот огрех связан с незначительной ошибкой в драйвере, проявившейся после обновления игры.
С новым патчем карта ATi X800 демонстрирует некоторые ошибки рендеринга на карте Volcano, однако они проявляются только при определённых перспективах. Нажмите на изображение для получения увеличенной версии.
Далее мы сравним качество изображения FarCry v1.1 (мы взяли иллюстрации из статьи о GF 6800, nVidia v60.72, ATi Cat 4.3) и FarCry v1.2 (nVidia v61.45, ATi Cat 4.6). В этом сравнении X800 представляет и Radeon 9800, поскольку оба ускорителя дают практически идентичный результат по качеству картинки (без AF). Нажмите на иллюстрацию для получения несжатой версии.
Мы начнём с уровня “Archive”, на котором мы заметили сильную пикселизацию плиток пола в нашем изначальном обзоре GF 6800.
Farcry v1.1
Этот скриншот взят из обзора GeForce 6800. Мы видим сильную пикселизацию на картах GeForce FX 5950 Ultra и 6800 Ultra.
Farcry v1.2
Новая версия демонстрирует существенно улучшенное качество GeForce FX 5950 Ultra. В любом случае, результат всё ещё не идеален. GeForce 6800, с другой стороны, освободилась от проблем рендеринга.
Здесь ещё одна часть той же самой сцены. Как видите, на GeForce FX 5950 Ultra в версии v1.1 на шкафу отсутствует освещение, а у GeForce 6800 оно слишком слабое. Обновление до v1.2 решает эту проблему. Обратите внимание на разницу между моделями Shader Model 2.0 и 3.0. В новом пути кода появляются дополнительные серые области внутри шкафа.
Здесь мы наблюдаем неправильные освещение и отражения на GeForce FX 5950 Ultra. И снова версия v1.2 решает эту проблему.
У версии игры v1.1 карты nVidia демонстрируют проблемы с правильным выводом отражений и дают эффект слоистости. У Farcry v1.2 все эти проблемы исчезли.
Ещё один пример отсутствующих или слишком тёмных отражений в Farcry v1.1.
…и решение проблем в новой версии. Внимательное рассмотрение позволяет выявить чуть более тёмные отражения на SM 3.0 по сравнению с SM 2.0 у GeForce 6800.
Пятно света, отбрасываемого фонариком в FarCry v1.1.
Благодаря новому исправлению пятно света, наконец-то, видно и на GeForce 5950 Ultra, хотя с большим количеством визуальных артефактов. GeForce 6800 сейчас правильно отображает этот эффект. Как нам кажется, при использовании Shader Model 3.0 фокусировка пятна выполнена более точно. Это объясняет тот факт, что новые скриншоты пути кода SM3.0 отображают более тёмные отражения. В целом, интенсивность фонарика в новом пути кода оказывается чуть ниже.
Тестовая конфигурация
Новый патч v1.2 также включает четыре записанные timedemo на уровнях “Research”, “Regulator”, “Cooler”, “Training” и “Volcano”. Тестовый прогон может стартовать через командный файл. Впрочем, подобный тип теста в FarCry несколько проблематичен. С одной стороны, здесь присутствует большое число движимых AI врагов по всей сцене, которые в каждом тестовом прогоне демонстрируют чуть различающееся поведение. Другой проблемой является сохранение игры на жёсткий диск в некоторых местах при прогоне timedemo. Следовательно, мы получаем чуть различающиеся результаты при каждом прогоне на одной и той же видеокарте. Значения fps становятся стабильными только через три или четыре цикла теста. Ещё одним видом теста могла бы быть запись игры, в которой все враги были бы, хм, “удалены” с карты, и в которой вся карта была бы открыта. К сожалению, записанные игры от FarCry v1.1, по всей видимости, больше не работают с новым патчем – по крайней мере, в той версии, которую мы получили.
Уровень Research
Теперь что касается тестов и графиков. Светло-зелёные полоски показывают результаты, полученные на GeForce 6800 с SM 3.0. Тёмно-зелёные полоски отображают результаты с версией SM 2.0, которую, конечно же, используют и карты ATi. Следующие тесты проводились с выключенным фонариком.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Мы видим, что Shader Model 3.0 ощутимо увеличивает производительность GeForce 6800, в результате чего карты Radeon X800 остаются позади. В то же время результаты GeForce 5950 Ultra разочаровывают.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Что касается функций улучшения качества изображения типа FSAA (полноэкранное сглаживание) и AF (анизотропная фильтрация), то при их включении производительность 6800U и X800 XT PE выравнивается. Двигаясь дальше, мы видим, что GeForce 6800 GT обгоняет X800 Pro, своего прямого конкурента, как по цене, так и по производительности. После этой двойки следует стандартная GeForce 6800.
Уровень Regulator
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
На уровне Regulator переключение на SM 3.0 даёт лишь незначительное улучшение. В тоже время, карты nVidia GeForce 6800 Ultra и GT бесспорно являются лидерами. Кстати, обычная 6800 работает только наравне с Radeon 9800 XT.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Ещё один забег с разочаровывающими результатами для обычной GeForce 6800. В то же время, Ultra чуть обходит X800 XT PE, а GT легко обгоняет X800 Pro.
Уровень Training
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Карты GeForce 6800 Ultra и GT здесь практически равнозначны, поскольку производительность сдерживается центральным процессором. В любом случае, 6800 GT вновь смогла отобрать майку лидера у X800 Pro.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Включение FSAA и AF даёт те же результаты, что и раньше. Вновь SM 3.0 оказывает благоприятное влияние на производительность, хотя оно и невелико.
Уровень Volcano
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
На уровне Volcano у обеих карт заметен ощутимый прирост при включении SM 3.0. GeForce 6800 Ultra и GT вновь демонстрируют отчётливое лидерство. Но на этот раз даже обычная модель GeForce 6800 даёт именно ту производительность, которую мы и ожидали увидеть, чуть отставая от X800 Pro в разрешении 1280×1024 и даже обгоняя эту карту в 1024×768.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Как и раньше, стандартная GeForce 6800 демонстрирует значительное падение производительности при включении FSAA и AF. Используя SM 3.0, GeForce 6800 Ultra “на волосок” обгоняет X800 XT, хотя 6800 GT комфортабельно расположилась перед X800 Pro.
Уровень Cooler
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
На уровне Cooler некоторые результаты с SM 3.0 оказываются хуже, чем с SM 2.0. Поначалу X800 XT может сохранять небольшой отрыв от GeForce 6800 Ultra. Кстати, здесь мы видим повторение ситуации, когда GT доминирует над X800 Pro.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
При включении FSAA и AF карта X800 XT PE демонстрирует небольшой отрыв от GeForce 6800 Ultra. С другой стороны, карта X800 Pro заметно медленнее, чем GeForce 6800 GT.
Уровень Cooler – фонарик включён
Для тестов с включённым фонариком мы использовали демо, описанные выше. Для сравнения мы также привели результаты с выключенным фонариком – они показаны тёмно-серыми строчками.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Включение фонарика обходится на GeForce 6800 Ultra намного “дешевле” (падение 9%), чем на X800 XT PE (18%).
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
С включённым FSAA и AF производительность на обеих картах практически идентична. И вновь SM 3.0 очень положительно влияет на производительность GeForce 6800 Ultra.
Уровень Volcano – фонарик включён
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
Верхнее значение (светло-зелёный) = SM 3.0, нижнее значение = SM 2.0.
На уровне Volcano карта GeForce 6800 вновь получает очевидное преимущество от Shader Model 3.0. Впрочем, FSAA и AF выполняют свою часть “работы” по снижению производительности.
Заключение
После выхода nVidia GeForce 6800 нас интересовал вопрос, будет ли этот графический процессор работать быстрее по сравнению с картами ATi при использовании DirectX 9.0c и Shader Model 3.0? Сейчас мы можем впервые ответить на него. По крайней мере в FarCry, карты GeForce 6800 показывают более или менее отчётливый прирост производительности, получаемый на тех уровнях, которые используют специальные программы-шейдеры SM 3.0. С другой стороны, на других мы не смогли заметить особой разницы – конечно, если не учитывать прирост производительности при включении фонарика.
Если хорошей новостью можно считать уже то, что проблемы качества картинки карт GeForce 6800 с выходом нового патча FarCry остались в истории, ещё лучшей новостью будет то, что это улучшение качества не ухудшает производительность, но даже улучшает её на некоторых уровнях. Хотя мы смогли определить незначительную разницу рендеринга между SM 2.0 и SM 3.0, говорить об ухудшении качества здесь неуместно. Интенсивность освещения чуть уменьшается, однако это заметно только при прямом сравнении скриншотов.
Как мы и предполагали, SM 3.0 не улучшает качество рендеринга, несмотря на то, что nVidia многократно повторяет это на своих презентациях. Ещё предстоит увидеть, будут ли наблюдаться схожие результаты на других играх с поддержкой SM 3.0, поскольку прирост производительности может быть вызван и другими факторами. К примеру, вполне возможно, что новый путь кода SM 3.0 просто содержит программы-шейдеры, специально оптимизированные под архитектуру NV4x.
Несмотря на улучшения, заметные на новой платформе nVidia, мы по-прежнему критически относимся к производительности и качеству картинки, которые обеспечивает GeForce FX 5950 Ultra. Хотя качество картинки, в целом, улучшается, оно всё ещё не может сравняться с новейшими моделями GeForce или ATi Radeon. Помимо всего прочего, некоторые результаты в нашем тестировании оказываются разочаровывающими, по сравнению с Radeon 9800 XT. Возможно, это связано с драйвером v61.45, который не был специально оптимизирован под архитектуру GeForce FX 5950 Ultra. С другой стороны, возможно, это является ценой, которую необходимо платить за улучшение качество картинки на этой карте. Трудно сказать.
nVidia и Crytek действительно показали, что SM 3.0 может привести к улучшениям производительности по сравнению с SM 2.0. Это заключение, вообще-то, ставит под сомнение информацию, которую ATi распространяла в последние месяцы. Во многих наших тестах FarCry карты nVidia сейчас обходят конкурентов от ATi. Особенно убедительную производительность в своей категории демонстрирует GeForce 6800 GT – особенно с учётом того, что при цене $399 она стоит столько же, сколько прямой конкурент X800 Pro.