Компьютеры

Колонка редактора: молимся на DirectX 12, геймеры

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

Давайте рассмотрим несколько ситуаций. Например, грядущий «Ведьмак 3» рекомендует использовать в системе видеокарты не ниже уровня GeForce GTX 770 и Radeon R9 290. Не буду заострять внимание на том, почему поляки ставят акценты на столь разных по производительности графических адаптерах AMD и NVIDIA (это отдельная тема для холивара). Просто интересен сам факт. Игра пережила две масштабные отсрочки. Плюс всем понятно, из-за чего это происходит: на протяжении всего времени «допиливания» проекта он достаточно сильно видоизменился. Причем не в лучшую сторону в плане графики. Очередная сага о ведьмаке Геральте еще не вышла, однако уже сейчас очевидно, что никакого некстгена не будет. А будет очередная тяжеловесная игра, полностью насладиться которой смогут лишь обладатели реально производительных игровых систем.

The Witcher 3: Wild Hunt — еще один потенциальный хит, который посрамит ваш игровой компьютер

Есть вероятность, что The Witcher 3: Wild Hunt повторит путь Assassin’s Creed Unity, которую на момент написания этой заметки можно назвать, пожалуй, самой ресурсоемкой компьютерной игрой. И это тенденция. Шутка ли, но даже самые производительные графические адаптеры, стоимость которых превышает 1000 долларов США, а также связки из нескольких 3D-ускорителей не могут выдать играбельный уровень FPS при максимальных настройках качества графики.

Производительность сразу двух видеокарт стоимостью 150 000 рублей в Assassin’s Creed Unity

С момента выхода консолей последнего поколения стали популярными предсказания о том, что в скором времени (для графики уровня некстген) видеопамять в размере 8 Гбайт станет стандартом де-факто для современных 3D-карт. Напомню, и в Xbox One, и в PlayStation 4 используется именно такой объем «мозгов», предназначенный для APU Jaguar. В принципе, эти ожидания оправдываются. Накладывает свой очень серьезный отпечаток и популяризация 4K-разрешения. Уже сейчас мы можем наблюдать картину, когда даже 4 Гбайт видеопамяти может быть недостаточно. Разработчикам компьютерных игр проще «навесить» тяжелых текстур и постобработки. И это очевидная тенденция.

С одной стороны, все логично. Ведь производители компьютерного железа зачем-то выпускают мощные комплектующие? Вот пусть их возможности целиком и задействуются в новой продукции геймдевов. Чего кривить, такое положение выгодно в первую очередь самим производителям железа. Ведь каждая новая компьютерная игра, требующая от игрового компьютера все больше и больше ресурсов, побуждает человека к дальнейшему апгрейду. С другой стороны, очевидно, что даже сегодняшних мощностей современных видеокарт недостаточно, чтобы при такой существующей тенденции увидеть на ПК реально nextgen-графику. Да к тому же ощутить ее самостоятельно, ведь далеко не каждый поклонник 3D-развлечений может раз в год-два выкладывать от 500 до 1000 долларов США за флагманское решение AMD или NVIDIA. Проще купить консоль.

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

Кстати, именно на приставках появляются первые отголоски некстгена. Взять, например, эксклюзив для «плойки» The Order: 1886, обладающий поистине великолепной графикой. Особенно, если учитывать, что в PlayStation 4 графическая составляющая обладает производительностью, сравнимой с Radeon HD 7850 (она же Radeon R7 265X) — откровенным Low-end в сегодняшнем мире компьютерных комплектующих. Так вот, геймеры, успех DirectX 12 и подобных низкоуровневых API поспособствует увеличению качества графики в компьютерных играх, а также снижению общих требований к системе.

На что способны DirectX 12, API Mantle и Vulkan

Мы уже неоднократно писали про DirectX 12. В сентябре этого года API Microsoft исполняется 20 лет. Мы также писали про Mantle — низкоуровневый программный интерфейс, разработанный AMD, который появился в открытом доступе для разработчиков. На выставке GDC 2015 компания Khronos Group представила API Vulkan (основополагающийся на Mantle) — главный компонент будущих игр Valve и SteamOS. Все эти интерфейсы и должны помочь значительно увеличить качество графики в современных компьютерных играх.

Тенденции очевидны и прозрачны. Microsoft (как и Valve со своей Steam Machine) заинтересована в том, чтобы ПК и дальше развивался как игровая платформа. И очевидно, что больших успехов удастся достичь, предоставив разработчикам средства для низкоуровнего программирования. Да, основным ограничением для платформы ПК является большое количество разнообразных конфигураций. Однако появляющиеся первые результаты тестирования DirectX 12 говорят о том, что даже в такой ситуации реально выжать гораздо больше из имеющегося компьютерного железа. Так, компания Futuremark совсем недавно представила новый тестовый пакет API Overhead future test, который вошел в обновленный бенчмарк 3DMark. Он входит в программу Benchmark Development Program, поддерживаемую такими компаниями, как AMD, Intel, Microsoft и NVIDIA. Уже после официального анонса Windows 10 компания предоставит полноценный DirectX 12 бенчмарк.

Итак, API Overhead future test позволяет оценить производительность системы в DirectX 12 и Mantle. Естественно, для его работы необходима сборка Windows 10 — не ниже версии 10041. Сам процесс очень прост. Старые API (в данном случае — DirectX 11) накладывают ограничения на количество команд отрисовки CPU. DirectX 12 и Mantle решают эту исходную проблему, обеспечивая возможность вызова большего числа команд отрисовки. За счет чего графические движки могут выводить больше текстур и объектов. Так, во время теста выводится все большее число объектов. До тех пор, пока графический адаптер не перестает справляться с их обработкой. И уровень FPS не падает ниже 30 кадров в секунду. Результаты получаются весьма интересными. В среднем DirectX 12 и API Mantle оказываются на порядок производительнее DirectX 11. И даже весьма слабенькие графические адаптеры способны справиться с отрисовкой миллионов объектов. Этот факт и свидетельствует о потенциале новых низкоуровневых API для персонального компьютера.

Результаты тестирования в 3DMark API Overhead future test

Схожие результаты получила и сама AMD. Так, были предоставлены результаты тестирования видеокарт Radeon R7 260X и Radeon R9 290X в DirectX 12 в разрешении Ultra HD. В первом случае количество отрисованных объектов (в сравнении с DirectX 11) увеличилось на 953% (в 10,5 раз), во втором — на 1547% (16,5-кратный прирост). Итоговые показатели в очередной раз оказались ошеломительными, схожими с теми, что демонстрирует Overhead future test от Futuremark. Так что DirectX 12 — это еще и первая ласточка по оптимизации игр для набирающего популярность разрешения Ultra HD.

Сравнение производительности DirectX 11 с DirectX 12

Низкоуровневые API наконец-то позволят задействовать все мощности центральных процессоров. Конечно же, речь идет о многоядерных системах. Возвращаясь к бенчмарку 3DMark, на графике ниже видно, насколько увеличивается количество отрисованных объектов в зависимости от числа ядер процессора. Так, каждое новое ядро процессора AMD FX-8350 добавляет по 2,9 млн вызовов отрисовки в секунду. Оптимальным вариантом являются 4-ядерные и 6-ядерные решения. Дальше даже видеокарта уровня Radeon R9 290X уже не справляется с отрисовкой все новых вызовов.

Зависимость производительности DirectX 11 и DirectX 12 от количества ядер CPU

Как видите, потенциал DirectX 12 и Mantle огромен. Он реально позволяет буквально выжать все соки из компьютерного железа. При этом у разработчиков игр развязываются руки, ведь они могут в несколько раз увеличить количество объектов и текстур, которые сможет обработать компьютер. Даже пользователь, обладающий не самой мощной графической подсистемой, тем не менее, сможет ощутить 10-кратный рост быстродействия.

Вместо заключения

Банальная банальность, но сегодня разработчики компьютерных игр используют далеко не все ресурсы современных графических адаптеров. А потому складываются ситуации, когда даже самые мощные видеокарты не способны выдать пользователю комфортный уровень FPS. В таком случае появление DirectX 12 может стать самым большим событием в игровой ПК-индустрии последних лет. Коммерческий успех Windows 10 однозначно позволит набрать авторитет этому API. В отличие от Mantle и Khronos Vulkan, именно нативная поддержка нового программного интерфейса в среде Windows позволит обзавестись столь необходимой популярностью. А если будет авторитет, то ни один производитель компьютерных игр элементарно не сможет проигнорировать наличие DirectX 12 в своих новых играх. Как говорится, не умеешь — научим, не хочешь — заставим.