Программирование стратегических игр с DirectX 9.0

         

Сокеты и DirectPlay


Когда дело доходит до непосредственной разработки игры с поддержкой многопользовательского режима, вам придется выбрать один из двух API. Вы можете работать непосредственно с сокетами или воспользоваться DirectPlay. DirectPlay в действительности основан на сокетах. Так что сокеты вы будете использовать в любом из двух случаев, но DirectPlay представляет собой надстройку над сокетами, предоставляющую набор высокоуровневых функций.

Что такое сокеты? Это каналы связи между компьютерами, передающие данные в обоих направлениях. Вы можете одновременно открыть несколько сокетов, и ничто не ограничивает максимальное число открытых сокетов.

Главное преимущество непосредственной работы с сокетами — наличие полного контроля за тем, что происходит в канале связи. Вы также можете перенести свой код на операционные системы, отличные от Windows. Главное пугало сокетов — необходимость самому писать код для всех выполняемых действий.

Главное преимущество DirectPlay заключается в том, что он выполняет за вас значительную часть работы. Вам уже не придется беспокоиться об упорядочивании пакетов, гарантии доставки и даже об управлении сессиями. Главный вред от DirectPlay — утрата полного контроля за происходящим. Еще одна проблема заключается в том, что DirectPlay нельзя использовать на операционных системах, отличных от Windows. Чтобы сделать правильный выбор учтите следующие правила:

  • Если вам необходимо переносить вашу игру на различные платформы, используйте сокеты.
  • Если вы хотите, чтобы DirectX делал за вас всю сложную работу, используйте DirectPlay.
  • netlib.narod.ru< Назад | Оглавление | Далее >



    Содержание раздела