Производительность DirectX 11 в Dirt 2

Автор: Topol Суббота, Апрель 21st, 2012 Нет комментариев

Рубрика: Операционные системы

PC-версию Dirt 2 придется подождать больше трех месяцев, но когда она выйдет, это она будет одной из первых с поддержкой современной графики DirectX 11.

Полной версии еще предстоит выйти, а пока Codemasters представила демо-версию, поэтому если вы являетесь счастливым обладателем графической карты ATI Radeon серии 5000, вы не только сможете играть на высоком разрешении с включенным сглаживанием, но и также сможете увидеть будущее графики для ПК.

Мы уже писали о том, что принес DirectX 11 в компьютерную индустрию. Та статья заслуживает внимания, если вы хотите получить более полную информацию о том, какие изменения принес новый графический API для ПК. Dirt 2 использует DirectX 11 в пяти ситуациях. Собственно, в этом видео от Codemasters вы сможете увидеть, в каких именно:   http://youtu.be/D9p3PYOX1Vc

Аппаратно-тесселированная динамическая водная поверхность, анимированная толпа и динамичная одежда
Тесселяция, пожалуй, является наиболее заметным и значительным нововведением в DirectX 11. Модуль аппаратной тесселяции присутствовал в графических процессорах от ATI, начиная с чипа Xenos в Xbox 360, но версия, используемая в серии HD 5000, является первой, которая полностью поддерживается DirectX.

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


DirectX 9………………………………………………………DirectX 11

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

Согласно AMD: «Процессор генерирует вершинную текстуру, когда диски автомобиля проходят через водную поверхность. Тесселятор генерирует сотни треугольников на базе положения камеры. В результате получается красивая, физически точная, динамическая поверхность. В режиме DirectX 9 поверхность является иллюзией, представленной всего двумя треугольниками».

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

HDR-освещение с плавающей точкой
Широкий динамический диапазон освещения (HDR) — это метод, применяемый еще в дни Far Cry и Half Life 2, и пока некоторые разработчики пытались сделать его более реалистичным и привлекательным, он прочно закрепился в качестве ключевой техники 3D-графики. По информации AMD:

«Dirt 2 использует HDR-освещение. В DirectX 9 оно реализовано с помощью формата стандартной фиксированной точки R8G8B8A8, поэтому HDR-эффект достигается за счет цветовой глубины основной сцены. В DirectX 11 используется формат текстур с плавающей точкой R16G16B16A16, который позволяет сделать акцент на ярких цветовых диапазонах, сохраняя при этом глубину цвета основной сцены. Это приводит к увеличению общего качества визуализации».

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


DirectX 9………………………………………………………DirectX 11

Такие методы, как карты нормалей, все чаще добавляют при использовании преграждения окружающего света экранного пространства, впервые использованной в Crysis. Окклюзия буквально означает «заблокированный» или «загороженный» и в компьютерной графике пространственные преграды относятся к объектам, которые затеняются (частично или полностью) близлежащими объектами. Чтобы реализовать эту технику, программа проверяет буфер глубины сцены, определяя, какие объекты должны находиться в тени с помощью информации о глубине близлежащих пикселей. Dirt 2 использует преграждение окружающего света высокого разрешения, ускоренную вычислительными шейдерами DirectX 11. Согласно информации AMD:

«Преграждение окружающего света в высоком разрешении является одной из форм преграждения окружающего света экранного пространства (SSAO). По своей сути, она определяет глубину поверхностей. Эффект достигается за счет добавления теней там, куда попадание света весьма затруднительно. Для достижения высокого качества результата от этого эффекта необходимо осуществлять выборку многих сэмплов из буфера глубины, а это слишком большая цена. В режиме DirectX 11 в Dirt 2 используются вычислительные шейдеры, которые значительно ускоряют эту технику, используя локальное хранилище данных чипа для эффективного кэширования тайловых областей буфера глубины, следовательно, экономя время на выборке текстур».

Пост-обработка в полноэкранном режиме
В технических документах AMD говорится, что Dirt 2 «использует методы пост-обработки для получения изображения. В DirectX 9 некоторые процедуры пост-обработки выполняются на четверть полного разрешения экрана, чтобы сохранить время, затраченное на визуализацию. В DirectX 11 движок использует высококачественный подход и выполняет эти этапы на полном разрешении экрана».

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

Фактор DirectX 11
Теперь мы можем проверить на деле правдивость заявлений AMD и Codemasters — демо-версия загружена и установлена. Если вы являетесь владельцем карт Radeon серии HD 5000 и на вашем компьютере установлена Windows 7 или Windows Vista SP2 с последними обновлениями, тогда по умолчанию игра будет работать в режиме DirectX 11. Если же ваша система не отвечает этим требованиям, игра будет работать в режиме DirectX 9.

Тем не менее, вы можете принудительно использовать режим DirectX 9, изменив несколько конфигурационных файлов. Зачем вам это может понадобиться? Если вы приобрели, к примеру, Radeon HD 5770 и у вас есть большой монитор, дополнительные кадры могут оказаться приятным дополнением к хорошей игре.

Чтобы активировать режим DirectX 9, зайдите в папку Documents в Windows, найдите в папке My Games папку Dirt 2. Здесь вы найдете папку под названием Hardware Settings, в которой находится XML-файл hardware_settings_config.xml. Щелкните правой кнопкой на файле и выберите пункт Изменить, чтобы открыть файл в WordPad. Найдите строку «forcedx9 = False» и измените его на «forcedx9 = True». Теперь ваша игра будет работать в режиме DirectX 9.

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

Производительность
Мы тестировали игру на нашем стандартном тестовом компьютере, используя референсную разогнанную ATI Radeon HD 5870 с драйвером Catalyst 9.10 WHQL.

Процессор: Intel Core i7-965 (3.2ГГц: 133МГц x 24)
Материнская плата: Asus P6T V2 (чипсет Intel X58 Express)
Оперативная память: 3×2Гб Corsair TR3X6G1333C9 (в двухканальном режиме на частоте 1349.4МГц, тайминги 9-9-9-24-1T)
Видеокарта: ATI Radeon HD 5870 (работала на частоте 850/4800 МГц)
Жесткий диск: Corsair X128 120Гб SSD (прошивка версии 1.571)
Корпус: Antec Twelve Hundred Chassis
ОС: Windows 7 Home Premium x86-64

Поскольку на сегодняшний день у Nvidia нет DX11-совместимых карт, мы не смогли сравнить Radeon с другими картами, поэтому мы решили сравнить DirectX 11 и DirectX 9. Запустив встроенный в игру бенчмарк, который можно запустить из нижней части меню настроек графики, мы получили следующий результат:

Разница между DirectX 9 и DirectX 11 очевидна и она не делает чести новому API. В среднем DirectX 11 оказался на 30% медленнее, чем DirectX 9. Ситуация усугубляется, если оценивать минимальное количество кадров в секунду — в этом случае в DirectX 9 игра почти на 40% быстрее. Конечно, это не финальная версия и мы из-за нехватки времени протестировали лишь одну видеокарту и на одном разрешении, принимая во внимание всю ту шумиху относительно «эффективности» нового API, нам было стыдно видеть такую огромную разницу. Радует лишь то, что несмотря на такую разницу между двумя режимами, оба они довольно-таки шустрые для комфортной игры.

Тем не менее, мы все же решили оценить, насколько велика будет разница между двумя режимами в визуальном плане. Давайте посмотрим на скриншоты:


DirectX 9………………………………………………………DirectX 11

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


DirectX 9………………………………………………………DirectX 11
DirectX 9………………………………………………………DirectX 11
DirectX 9………………………………………………………DirectX 11

Мы, откровенно говоря, ожидали эффекта ряби на флагах и сглаживания их кривыми. Однако, все флаги в демо-версии одинаково рельефны как в режиме DirectX 9, так и в режиме DirectX 11. Кроме того, все текстуры идентичны. Едва ли вы заметите разницу, если только не обладаете острым зрением (или тугим конвертом, набитым деньгами, от создателей игры).

Некоторые незначительные отличия можно заметить в эффектах освещения. Оба режима проделывают отличную работу при просчете солнечного света на поверхности автомобиля. Однако, в Direct X 11 блики выглядят более правдоподобными. Наиболее заметным является чистота тени, особенно на заднем спойлере кузова — в режиме DirectX 9 тень имеет неровные края, а в DirectX 11 края выглядят четко. Тем не менее, различия носят несущественный характер и явно не стоят 30 кадров в секунду.

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

Заключение
После эпического разочарования DirectX 10 и появления радужных новостей и пресс-релизов о DirectX 11 мы, откровенно говоря, надеялись на нечто большее, чем увидели в демо-версии Dirt 2. Конечно, стоит принять во внимание, что это демо-версия, и в финальной игре можно смело рассчитывать на некоторые улучшения в плане производительности. Мы также должны отметить, что независимо от используемой версии DirectX, игра выглядела гораздо лучше, чем на Xbox 360, хотя это и не новость для PC-геймеров.

Мы думаем, что сможем увидеть весь потенциал DirectX 11 только тогда, когда разработчики создадут игру для DirectX 11 с нуля. Тем не менее, если отталкиваться от демо-версии Colin McRae: DiRT 2, нельзя не отметить приличный рост количества кадров в секунду при использовании DirectX 9.

Если вы являетесь счастливым обладателем карты Radeon HD 5000, пробовали ли демо-версию Dirt 2? Оценили ли вы DirectX 11? Поделитесь с нами своими впечатлениями.

Источник: thevista.ru

Оставить комментарий

Чтобы оставлять комментарии Вы должны быть авторизованы.

Похожие посты