Определение DirectX 10 и краткая предыстория его появления
Мы вплотную приблизились к тому, чтобы дать определение DirectX 10 и ряду сопутствующих терминов. Классическое определение представляет DirectX как совокупность интерфейсов прикладного программирования - Application Programming Interface, API, для удобного программирования приложений под операционные системы Microsoft Windows, главным образом, для программирования игр. Говоря проще, разнообразные библиотеки–API из комплекта DirectX, представляют собой готовые наборы функций для облегчения труда программистов. Теперь им не нужно каждый раз создавать ряд типичных процессов для работы со звуком, видео и т.п., для этого в комплекте DirectX имеется ряд стандартных "кубиков" и инструментов для создания мультимедийных приложений и игрушек под Windows. Между прочим, до появления DirectX так всё и было: разработчики новых программ и игр каждый раз были вынуждены учитывать в своём коде неисчислимое количество разнообразных видеокарт, звуковых плат, устройств ввода. Ситуация облегчилась после того как в 1995 году появилась первая версия Microsoft DirectX, представляющего собой набор мультимедийных API для работы с 2D и 3D графикой, аудио, устройствами ввода, и программисты получили возможность использовать все возможности новых "железяк" без непосредственного программирования под каждую. Надо ли говорить, насколько это ускорило процесс выпуска новых игр и приложений. На самом деле историю появления DirectX стоит начинать с 1992 года, когда, согласно историческим справкам, компания RenderMorphics начала разработку 3D графического API под названием Reality Lab для медицинского оборудования и приложений CAD. Компания RenderMorphics была куплена Microsoft в феврале 1995 года, уже после появления двух успешных версий API, в результате чего первая версия 3D графического API - Direct3D, была представлена в пакетах DirectX 2.0 и DirectX 3.0 под Windows 95. Хронология DirectX в общих чертах представлена таблицей ниже.| Версия DirectX | Операционная система | Дата выпуска |
| DirectX 1.0 | Windows 95a | 30 сентября 1995 |
| DirectX 2.0 / 2.0a | Windows 95 OSR2 и NT 4.0 | 5 июня 1996 |
| DirectX 3.0 / 3.0a | Windows NT 4.0 SP3 (последняя версия с поддержкой DirectX для Windows NT 4.0) | 15 сентября 1996 |
| DirectX 4.0 | - | - |
| DirectX 5.0 | Была доступна в бета-версии под Windows NT 5.0, инсталлировалась под Windows NT 4.0 | 16 июля 1997 |
| DirectX 5.1 | Windows 95/98/NT4.0 | 1 декабря 1997 |
| DirectX 5.2 | Windows 95 | 5 мая 1998 |
| DirectX 5.2 | Windows 98 | 5 мая 1998 |
| DirectX 6.0 | Windows 98/NT4.0 | 7 авгуса 1998 |
| DirectX 6.1 | Windows 95/98/98SE | 3 февраля 1999 |
| DirectX 7.0 | Windows 95/98/98SE/2000 | 22 сентября 1999 |
| DirectX 7.0a | Windows 95/98/98SE/2000 | Сентябрь 1999 |
| DirectX 7.1 | Windows 95/98/98SE/ME/2000 | 16 сентября 1999 |
| DirectX 8.0 | Windows 95/98/98SE/ME/2000 | 30 сентября 2000 |
| DirectX 8.0 | Xbox | 3 ноября 2000 |
| DirectX 8.0a | Последний вариант под Windows 95 | 7 ноября 2000 |
| DirectX 8.1 | Windows 98/98SE/ME/2000/XP | 12 ноября 2001 |
| DirectX 9.0 | Windows Server 2003 | 19 декабря 2002 |
| DirectX 9.0a | Windows 98/98SE/ME/2000/XP | 26 марта 2003 |
| DirectX 9.0b | RC2 | 13 августа 2003 |
| DirectX 9.0c | Windows XP SP2, Windows Server 2003 SP1, Xbox 360 | 13 декабря 2004 |
| DirectX 9.0c | Совместимые с DX9.0c версии Windows, впервые включены D3DX DLL | 9 декабря 2005 |
| DirectX 9.0c (Shader Model 3.0) | Windows XP Последнее обновление с поддержкой Windows 98/98 SE/ME/2000 - в августе 2005 Версии декабря 2005 и февраля 2006 - споддержкой формата XML для некоторых классов |
Ежемесячные обновления с августа 2005 |
| DirectX 9.0L | DirectX 9 API - только для Windows Vista | - |
| DirectX 10.0 | Новая версия DirectX только для Windows Vista | - |
Особенности DirectX 10
По словам разработчиков, DirectX10, или как его ещё частенько называют Direct3D 10 (D3D10) – по названию 3D API, нельзя оценивать как всего лишь следующую версию DirectX. В отличие от версии DirectX 9, которая являет собой эволюционное развитие, DX10 была полностью переработана, изменив процесс взаимодействия приложений и "железа", распределение нагрузки между центральным и графическим процессорами. На практике это означает, что графический процессор видеокарты с поддержкой DX10 становится мощнее не только в смысле способности более оперативного обсчёта ещё большего количества пикселей за то же время, но также позволяет работать с неведомыми ранее текстурами, объектами и явлениями. В то же время "избавленный" от необходимости обсчёта графических эффектов, центральный процессор может теперь посвятить свою мощь более быстрому обсчёту других задач. Ещё раз подчеркну, что DirectX10 - явление, актуальное исключительно для платформы Windows Vista и не будет использоваться ни на какой другой платформе. На самом деле, такой "эксклюзив" – не прихоть разработчиков, а следствие того, что для Windows Vista реализована совершенно новая модель графического (дисплейного) драйвера - Windows Display Driver Model (WDDM), не менявшаяся до появления DirectX10 со времён Windows NT4, с этим связаны виртаулизационные и архитектурные нововведения WDDM, реализованные в API и основополагающей инфраструктуре DirectX10. Новая модель драйвера также отражает дальнейшую эволюцию видеокарт – от обработки 2D растровых операций и GDI приложений, 3D игр на графических картах с фиксированными функциями, к современным программируемым модулям обработки графики с широкой поддержкой графических приложений. Среди ключевых нововведений, реализованных в DirectX10, любители новых игр по достоинству оценят следующие:- Более реалистичная анимация шерсти меха и растений
- Более мягкие и более чёткие тени
- Более насыщенные ландшафты с более сложной окружающей обстановкой
- Значительно более тщательно прорисованный лес, более масштабные и детальные сцены баталий
- Более динамичные и чаще меняющиеся по ходу событий сценарии игр
- Больший реализм и уменьшение смазывания движущихся объектов
- Объёмные эффекты
- Уточнённый, более реалистичный дым и облака
- Более реалистичные отражения и преломления на отражающих поверхностях – воде, автомобилях, стекле и др.
- Снижение загрузки CPU, перераспределение обсчёта ряда процессов на GPU, снижение вероятности подтормаживания и зависания системы при сложном геймплее
"Живой" мех
DirectX9.0b - Halo: Combat Evolved
DirectX10 - Crysis
DirectX9
DirectX10
DirectX10
Заставка Windows Vista, DirectX9 рендеринг
Заставка Windows Vista, DirectX10 рендеринг
Графические API под Windows XP
Графические API под Windows Vista
- Использование Direct3D 9 подразумевает поддержку Windows XP или более ранних версий Windows
- Использование Direct3D 9 с XPDM драйверами подразумевает поддержку Windows Vista для систем на базе "железа" без поддержки Direct3D 10
- Использование Direct3D 10 позволит оценить все прелести нового поколения видеокарт под Windows Vista
Замещающее текстурирование (Displacement Mapping)
- DirectDraw - 2D растровая графика
- Direct3D - D3D, 3D графика
- DirectInput - обработка данных клавиатуры, мышки, джойстика и других игровых контроллеров
- DirectPlay - сетевые коммуникации в играх
- DirectSound - запись и воспроизведение звука
- DirectSound3D - DS3D, 3D звук
- DirectMusic - воспроизведение саундтреков из DirectMusic Producer
- DirectSetup - инсталляция компонентов, не реализованных в API DirectX
- DirectX Media - сочетание DirectAnimation, DirectShow, DirectX Video Acceleration, Direct3D Retained Mode и DirectX Transform, соответственно, для анимации, воспроизведения мультимедиа и потоковых приложений, 3D и интерактива
- DirectX Media Objects - поддержка объектов потоковой обработки - кодировщиков, декодеров, эффектов
Таким образом, сегодня мы в общих чертах определились с терминологией, чуток "копнули" предысторию появления DirectX 10, ранее называвшегося Windows Graphics Foundation 2.0 и DirectX Next, а ныне через раз именуемого просто Direct3D 10; в самых общих чертах ознакомились с его возможностями. Полагаю, для первого раза достаточно.
Ссылки и ресурсы по сегодняшней теме:
- NVIDIA GeForce 8800 GTX: новый 3D лидер с поддержкой DirectX 10
- Foxconn 8800GTS - даже "младшая сестра" GeForce 8800GTX способна обойти вчерашних флагманов
- Microsoft MSDN DirectX
- Windows Vista Blog
- Решения NVIDIA для Windows Vista
- ATI - The Graphics Power in My Windows Vista Capable PC
Предыдущие публикации по теме Windows Vista:
- Я работаю с Windows Vista. Часть VI: пользовательский интерфейс и настройки
- Я работаю с Windows Vista. Часть V: горячие события и ближайшие перспективы
- Я работаю с Windows Vista. Часть IV: новая платформа для бизнеса
- Я работаю с Windows Vista. Часть III: установка, производительность, лицензия
- Я работаю с Windows Vista. Часть II: мультимедиа и интерактив - объять необъятное
- Я работаю с Windows Vista. Часть I: подробно о системных требованиях
- Microsoft Windows Vista Beta 2


MWC 2018
2018
Computex
IFA 2018






