Революционные нововведения или коротко о DirectX 10
   C анонсом новой операционной системы от Microsoft Windows Vista, обычным пользователям стали доступны возможности нового набора библиотек API - DirectX 10. К сожалению, пока всеми прелестями DirectX 10 мы насладиться не сможем. Объясню почему. Этому «препятствуют» две причины:
   Первая – это доступность видеоплат с поддержкой DirectX 10. На данный момент всё больше появляется видеоплат с DX10, но не все из них способны обеспечить достойную производительность в DX10 приложениях. Так карты Low-end класса с поддержкой DX10 «неплохо» чувствуют себя в DX9 приложениях, но в DX10 – наблюдается существенное падение производительности, и у человека сразу же теряется желание играть в современные игры с такой видеоплатой. А ведь большинство этих продуктов и покупается для того, чтобы насладиться графикой нового поколения. Но будем думать, что новые оптимизации в драйверах смогут каким-то образом улучшить ситуацию в пользу видеоплат с поддержкой DirectX 10.
Далее представлены фото видеокарт с поддержкой DirectX 10:
ATI/AMD HD2900 XT
http://images.people.overclockers.ru/129669.jpg
GeForce 8800GTX от Leadtek
http://images.people.overclockers.ru/126402.jpg
GeForce 8600GT от XFX
http://images.people.overclockers.ru/125258.jpg
ATI/AMD HD2600 XT от Saphire
http://images.people.overclockers.ru/125256.jpg
ATI/AMD HD2900 XT с модулем Пелетье
http://images.people.overclockers.ru/125255.jpg
   Вторая – это практически полное отсутствие DX10 приложений. Купив видеокарты с поддержкой DX10, пользователь ещё должен ждать какое-то время, когда появятся игры, поддерживающие DirectX 10. Из ныне существующих игр, можно по пальцам пересчитать те игры, которые поддерживают DX10. Это Lost Planet, Company of Heroes(патч), С all of Juarez (бенчмарк), больше даже ничего не приходит в голову. Ну и, конечно же, нельзя не вспомнить Crysis с его великолепными скриншотами, который игровая общественность ждёт уже больше года. Ну будем надеяться, что время расставит всё по местам.
   Теперь перейдём к более тщательному изучению возможностей DX10. DirectX 10 кардинально отличается от своих предшественников. В нём либо реализованы совершенно новым образом, либо кардинально улучшены практически все составляющие.
В результате:
- Значительно снижена загрузка центрального процессора: если раньше все объекты проходили так назыаваемую стадию проверки в игровом цикле каждый раз при использовании объекта (миллионы раз), то теперь – только при создании объекта.
- Результат вывода может быть вновь отправлен в обработку на конвейер. Таким образом, результаты вычислений графического процессора могут использоваться им же многократно – опять-таки без привлечения ресурсов центрального процессора.
- Последовательность проверки на перекрытие объектов друг другом теперь также рассчитывается без участия центрального процессора.
- Добавлена возможность поточного вывода: передача результатов исполнения геометрического или вершинного шейдера напрямую в графическую память. В предыдущей версии DirectX результаты работы вершинного шейдера, прежде чем покинуть конвейер, должны были пройти через блок пиксельных шейдеров. Общая экономия вычислительных ресурсов по различным задачам составляет от полутора до десяти раз и более.
Некоторые спецификации нового стандарта в сравнении с предыдущими приведены в таблице:
http://images.people.overclockers.ru/128402.png
- Добавился новый тип шейдеров – геометрический. Так же как и вершинные шейдеры, геометрические отвечают за просчёт геометрии трёхмерной сцены до того, как пиксельные шейдеры вступят в работу. Но в отличие от вершинных шейдеров, геометрические оперируют целостными объектами – треугольниками, которые, как известно, являются основой каркасной модели многих тел в трёхмерном мире.
Все шейдеры стали унифицированными – для всех теперь существует единый набор инструкций и общих ресурсов.
Одно из возможных применений нововведений шейдерной модели – создание систем частиц силами графического процессора. Геометрический шейдер создаёт систему частиц и выводит полученные данные в память, из которой они поступают в вершинный шейдер, отвечающий за анимацию.
- Строгая аппаратная спецификация. Ранее наблюдалась некоторая несогласованность между создателями видеоплат и игр из-за некоторых вольностей, позволенных в DX9. Все DirectX 10-совместимые ускорители должны уметь то, что входит в спецификацию – не больше, но и не меньше.
- Использование новых форматов HDR – R11G11B10 – позволить реализовать HDR  без существенного увеличения объёма данных и снизит нагрузку на шины по сравнению с форматом FP16, использующим по 16 бит на каждую цветовую компоненту. Кроме того, в Direct X 10 появился формат для сверхточных вычислений, использующий по 32 бита на каждую цветовую экспоненту.
   В данной статье мы кратко познакомились с особенностями DirectX 10. Ну что ж, ждём хороших видеоплат с поддержкой DX10 и игр с кинематографической графикой.
   
   С уважением, slamms