Есть некоторые вещи, обновляться которым суждено в лучшем случае раз в несколько лет. Игровые движки некоторых сверхпопулярных шутеров и не только, модельные ряды автомобилей небезызвестных западных производителей, игровые консоли и, чего уж греха таить, API. Частота обновления данных примеров варьируется от пары до восьми лет, но когда долгожданная обновка происходит, за этим следит всё заинтересованное сообщество. В эти дни в Сан-Франциско проходит конференция разработчиков игр, кратко — GDC. Пару недель назад корпорация Microsoft обещала пролить на ней свет на свой новейший API — DirectX 12, и вот, этот знаменательный день настал.
DirectX 11 радовал нас своим присутствием уже больше 4,5 лет (первый графический процессор с его поддержкой вышел в сентябре 2009 года), обещая невиданный доселе уровень технологичности в играх его поддерживающих. Но не всё коту масленица, пообещать-то пообещали, а вот на деле прорыва не случилось. Тесселяция, ставшая главным пунктом в «фишках» DirectX 11, не нашла широкого применения, ограничившись лишь несколькими играми, да даже там отличия приходилось искать, что называется, с лупой. Несомненно, специализированные бенчмарки наглядно демонстрировали (и продолжают это делать) разницу в качестве картинки, но свет клином на них не сошёлся. В итоге DirectX 11 ничего толкового в игровую индустрию своим появлением не внёс. По разным причинам, но это в данном вопросе не столь важно. Будем надеяться, что с DirectX 12 у Microsoft получится хоть чуточку убедительнее.
Первым делом Microsoft заявила, что DirectX 12 — настоящее воплощение технологической мысли, сердцем которой является новая, 12-я версия компонента Direct3D — самой, пожалуй, главной части DirectX, благодаря которой мы и можем наблюдать всю красоту в играх. Ребята, трудившиеся над Direct3D 12, произвели существенную переработку этого компонента, что вылилось в эффективность и скорость его работы. Direct3D 12 позволит на полную мощь и максимально эффективно использовать возможности современных графических процессоров, что, в свою очередь, позволит разработчикам создавать более насыщенные сцены со множеством объектов. Всё это может прозвучать так, будто Direct3D 12 удостоена функционирования только на компьютерах высшего ценового диапазона. Microsoft спешит всех успокоить: Direct3D 12 рассчитана на работу на устройствах разного «калибра», начиная со смартфонов и планшетов, заканчивая ноутбуками и стационарными компьютерами и, куда уж теперь без неё, консолью Xbox One.
Объясняет Microsoft всё вполне логично. Во-первых, Direct3D 12 предоставляет возможность более низкоуровневого доступа к аппаратному обеспечению, чем раньше, что позволит играм значительно улучшить масштабируемость при использовании многоядерных процессоров и снизить на них общую нагрузку. Во-вторых, по заверениям Microsoft, благодаря дескрипторным таблицам и новым высокотехнологичным методам рендеринга также снизится нагрузка и на графический процессор. Кто владеет техническим английским, может подробнее почитать обо всех этих особенностях.
Как можно заметить, нагрузка на ЦП в 3DMark при использовании Direct3D 12 гораздо плавнее, нежели при использовании Direct3D 11. Если всё будет действительно так, то это уже громадный плюс в копилку нового API.
Microsoft заявляет, что приобретать новые компьютеры или видеокарты необходимости нет, DirectX 12 будет поддерживаться примерно 80-ю процентами продаваемых сегодня игровых компьютеров. Microsoft свяжется со своими партнёрами на предмет внедрения информации о поддержке DirectX 12 их продуктами. Первые игры с поддержкой DirectX 12 должны появиться к праздничному сезону 2015 года, а некоторые разработчики движков, в частности, Epic Games, уже заявили, что внедрят в них поддержку DirectX 12.