Pull to refresh

DirectX 11 оптимизирует производительность игр

Вскоре, в этом году, вместе с Windows 7 состоится выход нового графического API — DirectX 11.
image
Разработчики игр смогут достаточно просто улучшить производительность игр, переведя движок своих игр на новый API, который откроет и новые возможности.

Улучшенная многопоточность: +20 % производительности

Стандартный прирост производительности в DirectX 11, благодаря улучшенной поддержке многоядерных процессоров, составит примерно 20 %, однако, в некоторых случаях прирост может достигать даже 50 %. Что еще более интересно: ПО, разработанное с учетом DirectX 11, будет работать быстрее на любых видеокартах, совместимых с Windows 7 и имеющих оптимизированные драйверы. Другими словами, преимущества получат владельцы видеокарт DirectX 9, DirectX 10, DirectX 11.

Пост-обработка: +10 % прироста

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

Такие эффекты как размытие в движении, глубина резкости и прочие сейчас делаются с использованием пиксельных шейдеров. Однако, это не очень эффективно с точки зрения производительности, потому что при таком подходе вычисления все же сильно зависят от конвейера визуализации. Благодаря тому, что вычислительные шейдеры не зависят от конвейера визуализации и требуют куда меньшего объема передачи данных, инструкций чтения текстур и т. д., перевод пост-обработки на них позволит «малой кровью» добиться значительного увеличения производительности, от 10 до 25 %.

Стоит отметить, что вычислительные шейдеры 4.0 и 4.1 уже поддерживаются существующими видеокартами DirectX 10 и DirectX 10.1. Однако, эти версии обладают рядом ограничений, которые не позволят раскрыть потенциал вычислительных шейдеров так же хорошо, как и версия 5.0 (оборудование DirectX 11). Поэтому не стоит ожидать серьезного распространения использования вычислительных шейдеров версии 4.x.

Тесселяция: когда производительность означает качество

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

Для использования этой функции наличие оборудования DirectX 11 обязательно.

В новом графическом API внесено еще множество других, более мелких оптимизаций и функций. Одна из них — сжатие HDR. В новом формате Microsoft, эффекты высокого динамического диапазона занимают вдвое меньше данных, чем прежде, что экономит пропускаю способность и оптимизирует производительность.
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.