DirectPlay - Википедия - DirectPlay
Эта статья слишком полагается на Рекомендации к основные источники.Апрель 2009 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
DirectPlay часть Microsoft с DirectX API. Это библиотека сетевой коммуникации, предназначенная для компьютерная игра разработка, хотя его можно использовать и для других целей.
DirectPlay - это программный интерфейс высокого уровня между приложениями и службами связи, который позволяет подключать игры через Интернет, а модем ссылка, или сеть. В нем есть набор инструментов, которые позволяют игрокам находить игровые сеансы и сайты для управления потоком информации между хостами и игроками. Он позволяет приложениям взаимодействовать друг с другом независимо от базовой онлайн-службы или протокола. Это также решает многие проблемы с подключением, такие как Трансляция сетевых адресов (NAT).
Как и остальная часть DirectX, DirectPlay работает в COM и доступен через компонентная объектная модель (COM) интерфейсы. По умолчанию DirectPlay использует многопоточный методы программирования и требует тщательного обдумывания, чтобы избежать обычных проблем с потоками. Начиная с версии DirectX 9, эту проблему можно решить за счет повышения эффективности.
Сетевая модель
Под капотом DirectPlay построен на Протокол пользовательских датаграмм (UDP), чтобы обеспечить быструю связь с другими приложениями DirectPlay.
DirectPlay находится на 4 и 5 уровнях Модель OSI.
- На уровне 4 DirectPlay может обрабатывать следующие задачи по запросу приложения:
- Упорядочивание сообщений, которое гарантирует, что данные прибывают в том же порядке, в котором они были отправлены.
- Сообщение надежность, что гарантирует гарантированное получение данных.
- Сообщение управление потоком, что гарантирует, что данные отправляются только со скоростью, с которой их может получить получатель.
- На уровне 5 DirectPlay всегда выполняет следующие задачи:
- Инициирование и завершение соединения.
Интерфейсы
- Основные интерфейсы (методы доступа) для DirectPlay:
- IDirectPlay8Server, который позволяет получить доступ к сервер функциональность
- IDirectPlay8Client, который позволяет получить доступ к клиент функциональность
- IDirectPlay8Peer, который позволяет получить доступ к пиринговый функциональность
- Вторичные интерфейсы:
- Различные интерфейсы лобби, которые позволяют игрокам найти и подготовить игру до того, как она начнется.
- Интерфейсы управления потоками, которые позволяют программисту точно настраивать использование ресурсов. Это также позволяет отключить работника. потоки так что сложно многопоточный проблем можно избежать за счет снижения скорости отклика.
- Разные преобразование сетевых адресов (NAT) интерфейсы, облегчающие работу игроков позади маршрутизаторы для проведения игр. Большинство игроков на широкополосный Интернет-соединения сталкиваются с этой проблемой.
- Различные интерфейсы голосовой связи, известные как Голос DirectPlay которые упрощают поддержку аудиосвязи и голосового ввода в играх.
- Различные интерфейсы мониторинга очереди, которые позволяют приложению получать обратную связь о том, сколько данных было отправлено и получено по запросу. Это позволяет приложению уменьшать / увеличивать объем отправляемых данных в соответствии с возможностями получателя.
Голос DirectPlay
DirectPlay Voice был представлен в Windows Me как часть DirectX 7.1 для многопользовательских игр. [1] Это API голосовой связи, записи и воспроизведения, который позволяет геймерам использовать голосовой чат в играх, написанных для использования преимуществ API, через сам сеанс сетевого транспорта DirectPlay.
Текущее состояние
DirectPlay традиционно был одним из компонентов DirectX, которому уделялось меньше внимания, но для DirectX версии 8 он претерпел серьезные изменения и стал относительно легкой сетевой библиотекой. Однако в рамках презентации Microsoft XNA в 2004 году Microsoft объявила, что DirectPlay будет устарел в пользу Игры для Windows - Live технология уже доступна на Xbox и переносится для использования на Windows ПК. DirectPlay будет поддерживаться в библиотеках DLL DirectX на протяжении всего срока службы Microsoft Windows XP, но с осени 2007 г. [2] заголовки и библиотеки - жизненно важные компоненты, если разработчики хотели разрабатывать новые программы, использующие эту технологию, - отсутствовали в DirectX SDK.
В Виндоус виста, DirectPlay устарел, а DirectPlay Voice и DirectPlay NAT Помощник удален. [3]
Смотрите также
Рекомендации
- ^ «Microsoft DirectX для поддержки голосовой технологии в реальном времени». Центр новостей Microsoft. 2012-10-23. Архивировано из оригинал на 2012-10-23. Получено 2020-01-25.
- ^ «DirectX SDK - (август 2007 г.)». Центр загрузки Microsoft. В архиве из оригинала на 2020-01-25. Получено 2020-01-25.
- ^ Белый, Стивен. «Часто задаваемые вопросы о DirectX - приложения Win32». Центр разработки для Windows. В архиве из оригинала на 2020-01-25. Получено 2020-01-25.
внешняя ссылка
- Документация Microsoft DirectPlay
- Microsoft DirectX 9 Последний SDK, поставляемый с заголовками и библиотеками DirectPlay.
Некоторые альтернативные библиотеки, которые служат той же цели, что и DirectPlay
- HawkNL на Wayback Machine (Архивировано 8 июля 2014 г.)
- OpenTNL на Wayback Machine (Архивировано 23 апреля 2016 г.)
- Ракнет