Понедельник, 20.05.2024, 08:19

Меню

Меню


Главная страница Форум Файлы Обмен баннерами Заказ баннера Мониторинг Онлайн видео Нew Toп-Наш Топ Гости дорогие Обьявления сайта

Counter-Strike 1.6


Плагины Античиты Читы Скрипты Радары Модели игроков Готовые сервера Модели оружия Взрывы Патчи Мапы Прицелы Программы Темы меню Боты Лого Руссификаторы Значки Кровь Статьи по cs 1.6

Photoshop


Шаблоны Рамки Кисти Шрифты Клипарты Плагины Текстуры Заливки Экшены Градиенты Стили Графические редакторы

Counter-Strike Source


Модели CSS Читы css Плагины css Боты css Карты css Патчи css Моды CSS Конфиги css Логотипы css Готовые сервера CSS

Ucoz


Cкрипты Обычные шаблоны Шаблоны cs 1.6 Шаблоны для форума Кнопки Иконки Видео по Ucoz Таблица цыетов
Главная » 2010 » Ноябрь » 2 » Что такое DirectX, и с чем его едят
19:45
Что такое DirectX, и с чем его едят
Было время, когда самой популярной операционной системой являлась MS-DOS, а компьютеры были гораздо слабее любого ныне существующего смартфона и КПК. Но играть хотелось всегда. И разработчики программного обеспечения, как ни странно, успешно писали замечательные игры, которые требовали всего лишь несколько мегабайт, а то и килобайт оперативной памяти. К сожалению, помимо трудностей с малым объёмом RAM возникали и другие проблемы, которые напрямую зависели от аппаратных комплектующих компьютера, так как игра должна была поддерживать взаимодействие с огромным числом существующих в то время видео- и аудиокарт. Поэтому программистам приходилось писать собственную реализацию взаимодействия с этими устройствами. Зачастую у разработчиков не было даже документации к драйверам, которые использовали конкретные аппаратные комплектующие, поэтому поддержка этих устройств реализовывалась крайне плохо.

Но многое изменилось с выходом в свет операционной системы Windows 95. Корпорация Microsoft сделала почти невероятное - благодаря созданию аппаратно независимого интерфейса программирования (API - Application Programming Interface), великого и ужасного DirectX, писать компьютерные игры стало несоизмеримо проше, чем раньше.

DirectX создавался специально для того, чтобы превратить операционную систему Windows в основную платформу для разработки игр. До этого практически все программисты, как было упомянуто ранее, писали игры только под MS-DOS, и лишь небольшая часть компьютерных игр делалась для ОС Windows 3.xx. Руководство корпорации Microsoft как в воду глядело - нужно было привлекать разработчиков игр, для того чтобы Windows прочно укрепилась на позициях. Одной из ранних попыток Microsoft облегчить жизнь программистам был выпуск WinG, но до функционала DirectX ему было очень далеко. А теперь многие программисты смогли по достоинству оценить новые возможности - не нужно отвлекаться на реализацию поддержки великого множества комплектующих, а значит можно сосредоточиться непосредственно на разработке игры. Отныне если у устройства имелась поддержка DirectX, то используя DirectX SDK при разработке игры, можно было достигнуть полной совместимости с большим количеством оборудования.

DirectX значительно упростил жизнь разработчикам игр, которые перестали копаться в документации от производителей железа, занимаясь исключительно программированием и сосредотачиваясь на проработке геймплея и графики. Работа с устройствами на низком уровне была полностью отдана стандартным функциям DirectX. По существу, DirectX - это библиотеки программ и функций, которые заботливые ребята из Microsoft заставили выполнять кучу рутинного кода. А для программистов был создан подробный справочник и среда разработки, позволяющая использовать DirectX в своих продуктах. Например, для того чтобы нарисовать на экране квадрат, теперь необходимо было всего лишь подключить соответствующую библиотеку DirectX и вызвать необходимую функцию с требуемыми параметрами.

Не стоит удивляться, что благодаря стараниям компании Microsoft DirectX стала широко использоваться для создания компьютерных игр. Многие помнят, как во время установки игры компьютер заодно предлагал обновить или установить DirectX, хотя сейчас он включён в стандартный набор программного обеспечения операционной системы Windows. Например, в поставку операционной системы Windows XP входит девятая версия DirectX, а в Windows Vista включена десятая версия. Следует заметить, что DirectX обновляется довольно часто, и версия, включённая в ОС Windows, зачастую является далеко не самой новой. На сегодняшний день DirectX 11 является самой последней версией, но, к сожалению, эта версия не может быть установлена на операционную систему Windows XP. Поэтому полноценная работа игр, использующих актуальную версию DirectX, может быть только на операционных системах Windows Vista и Windows 7.

DirectX разделяется на ряд программных интерфейсов, среди которых можно выделить несколько основных:

* DirectX Graphics - набор интерфейсов для обработки и последующего вывода графики;
* Direct3D - для ускорения трехмерной графики;
* DirectInput - интерфейс, используемый для обработки данных, поступающих с клавиатуры, мыши, джойстика и пр. игровых контроллеров;
* DirectPlay - интерфейс сетевой коммуникации игр;
* DirectSound и DirectMusic - интерфейсы для работы со звуком;
* DirectSetup - часть, ответственная за установку DirectX;
* Direct Media Objects реализует функциональную поддержку потоковых объектов.

Всем будет интересно узнать, что компонент Direct3D был попыткой Microsoft монополизировать производство игр. В задачи «корпорации зла», как ее прозовут неблагодарные пользователи в будущем, входило создание универсального интерфейса для программирования ускорителей трехмерной графики. Однако помимо очевидных преимуществ у Direct3D были и явные недостатки, и именно поэтому не все производители трехмерных игр использовали компонент Direct3D, предпочитая или интерфейс OpenGL производства Silicon Graphics, или писали игры под Glide, который поддерживался только видеокартами на чипсете 3DFX. Всем известный и всеми любимый Quake использует OpenGL для отрисовки и ускорения графики, а в первых частях Tomb Raider для этих целей был использован DosGlide. На сегодняшний день немало игр до сих пор выходит для OpenGL. Среди них широко известные игры от id Software, на движках которых многие разработчики выпустили свои собственные игры. Ну и, конечно, DirectX является базой для Xbox API (специальная версия DirectX, созданная для этой консоли).

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

Как и все успешные и приносящие прибыль идеи, реализация аппаратно независимого интерфейса программирования DirectX проходила очень стремительно. Вслед за DirectX 3 был выпущен DirectX 5 (DirectX 4 не существовало, его пропустили и сразу выпустили пятую версию), затем DirectX 6, 7, 8, 9, 10 и, наконец, последняя 11-ая версия. Каждая версия предоставляла новые возможности и увеличивала функционал платформы Windows. DirectX 8 считается началом эпохи программируемых шейдеров. До DirectX 8 все функции были строго зафиксированы, поэтому разработчик мог применять в своих приложениях только те эффекты, которые поддерживались определенным типом видеоадаптеров. Например, если графический процессор не поддерживал какую-нибудь функцию, то не существовало никакого способа внести этот эффект в свою игру. С появлением программируемых графических процессоров все изменилось, и теперь разработчики игр могут сами писать любые эффекты и включать их в своих играх. DirectX 8 и 8.1 стали поддерживать Shader Model 1.1 - 1.3 (DX8.1 включал также SM 1.4). Шейдерная модель дала новые возможности и увеличила потенциал DirectX. В DirectX 9 появилась поддержка Shader Model 2.0, а с выходом DirectX 9.0c появилась и поддержка Shader Model 3.0, которая давала почти безграничные возможности разработчикам, и лишь ограниченные мощности оборудования не давали им развернуться в полную силу.

Одновременно с релизом Windows Vista Service Pack 1, корпорация Microsoft представила DirectX 10, абсолютно новую модель драйверов, что означало отсутствие обратной совместимости со старыми версиями ОС Windows, например, с очень популярной Windows XP. Последующая версия DirectX 11 работает как в Windows Vista, так и в следующих версиях Windows.

Ниже представлен список новых возможностей DirectX 11, которые доступны счастливым обладателям видеокарт с поддержкой этой технологии. Рассмотрим их подробней.

Низкоуровневая поддержка аппаратного обеспечения и операционной системы DirectX 11 имеет программную поддержку предыдущего уровня аппаратного обеспечения DirectX 10, поэтому старые видеокарты с поддержкой DirectX 10 способны на часть возможностей DirectX 11, таких как многопоточность рендеринга (при наличии последней версии соответствующих драйверов).

Улучшенная многопоточная обработка

Теперь не только сама игра, компоненты DirectX и драйвер исполняются в отдельных потоках, но и такие задачи, как загрузка текстур и компиляция шейдера идут в параллельном основному коду потоке.

Новые этапы аппаратной обработки изображения для тесселяции

Аппаратная тесселяция в DirectX 11 позволяет использовать широчайший набор алгоритмов увеличения детализации базовых моделей при небольших затратах производительности. В основном тесселяция (разбиение модели на большее количество треугольников) используется для поверхностей земли, воды и для персонажей.

В этой модели шейдеров предложен новый набор инструкции с более гибким доступом к данным. Весь набор команд унифицированы, он один для шейдеров всех типов: Vertex, Pixel, Hull, Domain, Geometry и Compute. При этом применена объектно-ориентированная модель, очень удобная для разработчиков.

Вычислительные шейдеры

Вычислительные шейдеры дают аппаратному обеспечению от различных производителей поддержку для программирования GPU на выполнение задач общего назначения. Главным образом это коммуникация данных между потоками и богатый выбор примитивов для случайного доступа и потоковых операций ввода/вывода. Эти функции позволяют создавать более простые и более быстрые реализации уже используемых методик, таких как создание изображений и постобработка.

Также, в DirectX 11 появилась возможность сжатия текстур, в том числе и 16-битных HDR текстур, которые часто применяются в современных играх.

Многие из описанных выше функций призваны облегчить жизнь разработчикам, обеспечивая ряд новых функциональных возможностей и прирост производительности в играх.

Пришло время подвести итоги. Direct X - основной, успешно развивающийся инструмент разработки графических игр и приложений, обеспечивающий программирование видеографики под операционную систему Microsoft Windows. Direct X постоянно совершенствуется, позволяя использовать при разработке игр новые аппаратные технологии, предлагаемые производителями графических адаптеров, тем самым обеспечивая актуальность средств реализации графических эффектов и функций обработки графики. Альтернативные графические библиотеки, такие как OpenGL и Glide значительно уступают Direct X в популярности использования при разработке игр, поэтому можно ожидать, что в будущем корпорация Microsoft будет развивать этот API еще довольно долго, облегчая жизнь разработчикам игр и непосредственно пользователям.

Просмотров: 470 | Добавил: mTn | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Статистика
Пользователи:

Нас уже 109 человек!


Новые пользователи:

Новых за месяц: 0
Новых за неделю: 0
Новых вчера: 0
Новых сегодня: 0


Администраторов: 3
Модераторов: 1
Журналистов:
Друзей: 0
Проверенных: 1
Пользователей: 104
Нарушителей: 0

Сейчас на сайте:

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Сегодня были:
Статистика сайта: Комменты: 9
Форум: 58/60
Фото: 10
Блог: 2
Новости: 547
Downloads: 301
Статьи: 52
Стены пользователей: 1
Ad-board: 1
Games: 1
Наши партнёры
Смотреть онлайн фильмы в хорошем качестве Скачать фильмы без регистрации
Cчётчики

плагины WallHack WH+AIM+RADAR кс 1ю6 Counter-Strike 1.6 плагины для CS читы для cs Counter-Strike Прыжки и распрыг Ваш сервер виден в списке серверов Шрифты XBOX 360 PC PSP PS2 Игра через модем Cs-Nnov.NeT.Ru Ver 6.5 Cs-Nnov.NeT.Ru Шаблоны для uCoz Скрипты Для раскрутки сайта Читы для counter strike source читы скачать читы для кс скачать читы читы для 1.6 ad1das.ru by K-2 + Конструктор Atac Actions Windows XP Service Pack 3 Rus Final ATI Catalyst 9.10 WHQL Display Driver (XP/x32) Butterflies веточные элементы de_bgu Хищный AK-103 Lite Russian Calligrafic Fonts CS шаблон "Bio Pro" для ucoz Шаблон by Jerek 1.1 Шаблон CS +psd и рабочий конструктор Шаблон "Best Movies" Сs terror model WaterColor EXTREMUM Brushes векторные цветы Футбольный шаблон для Форума uCoz de_ csb_snomowarz Fake C4 Rcon Mod by f1xed скачать кисти для фотошоп плагины для пс, + фотошопа модели для фотошопа рамки для фотошопа фотошоп скачать фотошоп download ps crfxfnm rjynhe cs onlin кс сервера скачать кс как сделать свой сервер