Я работаю с Windows Vista. Часть VII.

Первый вводный материал по Microsoft DirectX 10 - предыстория появления, краткое описание нововведений и отличий от DX9, также рассмотрим вопросы совместимости.

11.12.2006 00:00,
Страницы: 1 2 След.

Сегодня придётся обойтись без текущих новостей и различного рода отступлений, поскольку поднимаемая тема очень важна и отвлекаться не будем. До сегодняшнего дня в цикле публикаций о Windows Vista мы фактически обходили стороной ключевые программно-аппаратные изменения новой платформы, который действительно очень важны в 3D играх и которые действительно недоступны на платформах с предыдущими версиями Windows.

Действительно, минимальные требования Windows Vista, предъявляемые к аппаратной части ПК для запуска Aero, включают в себя определённый объём памяти, процессор, и среди прочего – видеокарту с поддержкой DirectX 9.0. Разумеется, Windows Vista будет работать и с видеосистемой без поддержки DirectX 9.0 в привычном 2D режиме, но всё это, так сказать, бюджетные варианты, и сегодня речь не об этом. Фактически, сегодня мы попытаемся выяснить, что же необходимо для создания действительно производительного ПК, способного реализовать всё заложенное в современном "железе" и в Windows Vista, и как это будет работать.

На деле же, для реализации максимума возможностей игрового плана системами под управлением Windows Vista потребуется как минимум, три основных компонента: видеокарты совершенно нового типа – вроде NVIDIA GeForce 8000, операционная система Windows Vista, плюс совершенно новые игры. Только когда станут доступны все три эти слагаемых с поддержкой DirectX 10, мы сможем на практике оценить производительность, графические эффекты и прочие игровые достоинства платформ нового поколения.

Microsoft Windows Vista DirectX10

Определение 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.0Windows 95a30 сентября 1995
DirectX 2.0 / 2.0aWindows 95 OSR2 и NT 4.05 июня 1996
DirectX 3.0 / 3.0aWindows NT 4.0 SP3 (последняя версия с поддержкой DirectX для Windows NT 4.0)15 сентября 1996
DirectX 4.0--
DirectX 5.0Была доступна в бета-версии под Windows NT 5.0, инсталлировалась под Windows NT 4.016 июля 1997
DirectX 5.1Windows 95/98/NT4.01 декабря 1997
DirectX 5.2Windows 955 мая 1998
DirectX 5.2Windows 985 мая 1998
DirectX 6.0Windows 98/NT4.07 авгуса 1998
DirectX 6.1Windows 95/98/98SE3 февраля 1999
DirectX 7.0Windows 95/98/98SE/200022 сентября 1999
DirectX 7.0aWindows 95/98/98SE/2000 Сентябрь 1999
DirectX 7.1Windows 95/98/98SE/ME/200016 сентября 1999
DirectX 8.0Windows 95/98/98SE/ME/200030 сентября 2000
DirectX 8.0Xbox3 ноября 2000
DirectX 8.0aПоследний вариант под Windows 957 ноября 2000
DirectX 8.1Windows 98/98SE/ME/2000/XP12 ноября 2001
DirectX 9.0Windows Server 200319 декабря 2002
DirectX 9.0aWindows 98/98SE/ME/2000/XP26 марта 2003
DirectX 9.0bRC213 августа 2003
DirectX 9.0cWindows XP SP2, Windows Server 2003 SP1, Xbox 36013 декабря 2004
DirectX 9.0cСовместимые с DX9.0c версии Windows, впервые включены D3DX DLL9 декабря 2005
DirectX 9.0c (Shader Model 3.0)Windows XP
Последнее обновление с поддержкой Windows 98/98 SE/ME/2000 - в августе 2005
Версии декабря 2005 и февраля 2006 - споддержкой формата XML для некоторых классов
Ежемесячные обновления с августа 2005
DirectX 9.0LDirectX 9 API - только для Windows Vista -
DirectX 10.0Новая версия DirectX только для Windows Vista-

На практике не всё пошло так гладко, как хотелось бы – первые версии DirectX были порой нестабильны, к тому же на первых порах Microsoft продвигала Direct3D конкурируя как с OpenGL, так и с API вроде 3Dfx Glide. Где-то с версии DirectX 7.0, которая впервые позволила перенести значимую часть обработки 3D процессов с центрального процессора на графический чип, разработчики игр стали охотно отдавать предпочтение DirectX.

Начиная с версий DirectX 8.0/8.0a, где впервые дебютировали программируемые пиксельные и вертексные шейдеры (Shader Model 1.0 и 1.1), DirectX окончательно стал индустриальным стандартом и даже поддерживался в игровой приставке Microsoft Xbox.

Появление DirectX 9.0 ознаменовало начало поддержки Shader Model 2.0 и DirectPlay, затем – и Shader Model 3.0. Ныне свежую обновлённую версию DirectX можно в любое время скачать с сайта Microsoft, а комплект разработчика - DirectX SDK, распространяется Microsoft на бесплатной основе.

Особенности 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, снижение вероятности подтормаживания и зависания системы при сложном геймплее

Microsoft Windows Vista DirectX10
"Живой" мех

В качестве иллюстраций выше приведённых преимуществ можно привести сравнительные скриншоты DirectX9 и DirectX10.

Детализация

Microsoft Windows Vista DirectX10
DirectX9.0b - Halo: Combat Evolved

Microsoft Windows Vista DirectX10
DirectX10 - Crysis

Детализация

Microsoft Windows Vista DirectX10
DirectX9

Microsoft Windows Vista DirectX10
DirectX10

Страницы: 1 2 След.
Оцените материал:  
(Голосов: 5, Рейтинг: 3.42)

Каждый вечер мы будем присылать вам одно письмо со всеми опубликованными за день материалами. Нет материалов - нет писем, просто и удобно (другие варианты).

Материалы по теме


Комментарии (0)