Здавалка
Главная | Обратная связь

Современные видеотандемы



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

Графические API

Интерфейс прикладного программирования (Application Programming Interface, API), предоставляют разработчикам приложений некую стандартизированную совокупность команд (и сервисов), с помощью которых можно программировать работу всевозможных устройств от разных производителей. В настоящее время существует несколько графических API — Direct 3D (фирма Microsoft), OpenGL (фирма SGI) и уже не используемый Glide (фирма 3Dfx). Glide поддерживается только набором микросхем, выпускавшихся фирмой 3Dfx. Остальные API поддерживаются большинством современных видеоадаптеров. Direct 3D является частью API, называемого DirectX.

Microsoft DirectX

DirectX — это набор программных интерфейсов для разработки мультимедийных и игровых приложений для ПК. Это сложнейший инструмент, организующий взаимодействие игры с аппаратной частью компьютера, в первую очередь — с видеокартой, но также и со звуковой картой, с манипуляторами и сетевыми подключениями для многопользовательской игры.

В DirectX есть два режима работы — HAL и HEL.

HAL (Hardware Abstraction Layer) — уровень абстракции аппаратного обеспечения. Этот режим задействуется, когда аппаратные средства поддерживают функции, необходимые в данный момент для исполнения программы.

HEL (Hardware Emulation Layer) — уровень эмуляции аппаратного обеспечения. Если невозможно поручить работу аппаратуре (к примеру, видеокарта поддерживает лишь DirectX 8, тогда как в игре требуется DirectX 9), система пытается восполнить недостающие средства с помощью имитации, нагружая работой центральный процессор. Именно этот режим и позволяет создавать программные продукты будущего, но для нормальной игры, как правило, не годится. Процессору и так есть, чем заняться, и попытка заставить его помогать видеокарте способна привести лишь к полному затормаживанию компьютера. Обычно игра автоматически определяет, какая версия DirectX поддерживается аппаратно и либо отключает спецэффекты, требующие более современной версии, либо не запускается вовсе, если несоответствие слишком значительно.

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

Поскольку DirectX относится к уровню аппаратных абстракций (Hardware Abstraction Layer — HAL), разработчикам программного обеспечения необходимо использовать функции DirectX, а не обращаться напрямую к видеоадаптеру, звуковой карте, джойстику и другому оборудованию. DirectX также относится к уровню аппаратной эмуляции (Hardware Emulation Layer — HEL), что позволяет разработчику программно эмулировать те функции, которые не реализованы аппаратным обеспечением. Уровень HEL «медленнее», чем HAL, но лучше иметь не реализованную аппаратно функцию (пусть даже медленную), чем не иметь ничего.

Отношения между аппаратным, программным обеспечением и DirectX можно продемонстрировать следующей схемой:

Аппаратное обеспечение => DirectX => Программное обеспечение

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

Если вы на своем ПК из командной строки Windows запустите программку dxdiag, то сможете увидеть, из каких модулей состоит DirectX. Для последней версии это модули: Direct3D/DirectDraw, отвечающий за отрисовку на экране 3D/2D-изображений; DirectSound, осуществляющий взаимодействие между программами и звуковой подсистемой ПК; DirectMusic, в чьи функции входит, в основном, воспроизведение музыкальных MIDI-файлов и микширование всевозможных звуков; DirectInput, управляющий клавиатурами, мышками, игровыми контроллерами и прочим; и, наконец, DirectPlay, предназначенный преимущественно для поддержки сетевых игр.







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.