HOME

TheInfoList



OR:

DirectPlay is part of
Microsoft Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the Microsoft Redmond campus located in Redmond, Washi ...
's
DirectX Microsoft DirectX is a collection of application programming interfaces (APIs) for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms. Originally, the names of these APIs all began with "Direct" ...
API. It is a network communication library intended for
computer game Video games, also known as computer games, are electronic games that involves interaction with a user interface or input device such as a joystick, controller, keyboard, or motion sensing device to generate visual feedback. This feedback ...
development, although it can be used for other purposes. DirectPlay is a high-level software interface between applications and communication services that allows games to be connected over the
Internet The Internet (or internet) is the global system of interconnected computer networks that uses the Internet protocol suite (TCP/IP) to communicate between networks and devices. It is a '' network of networks'' that consists of private, p ...
, a
modem A modulator-demodulator or modem is a computer hardware device that converts data from a digital format into a format suitable for an analog transmission medium such as telephone or radio. A modem transmits data by modulating one or more c ...
link, or a
network Network, networking and networked may refer to: Science and technology * Network theory, the study of graphs as a representation of relations between discrete objects * Network science, an academic field that studies complex networks Mathematic ...
. It features a set of tools that allow players to find game sessions and sites to manage the flow of information between hosts and players. It provides a way for applications to communicate with each other, regardless of the underlying online service or protocol. It also resolves many connectivity issues, such as Network Address Translation (NAT). Like the rest of DirectX, DirectPlay runs in COM and is accessed through component object model (COM)
interfaces Interface or interfacing may refer to: Academic journals * ''Interface'' (journal), by the Electrochemical Society * '' Interface, Journal of Applied Linguistics'', now merged with ''ITL International Journal of Applied Linguistics'' * '' Int ...
. By default, DirectPlay uses multi-threaded programming techniques and requires careful thought to avoid the usual threading issues. Since DirectX version 9, this issue can be alleviated at the expense of efficiency.


Networking model

Under the hood, DirectPlay is built on the
User Datagram Protocol In computer networking, the User Datagram Protocol (UDP) is one of the core communication protocols of the Internet protocol suite used to send messages (transported as datagrams in packets) to other hosts on an Internet Protocol (IP) netwo ...
(UDP) to allow it speedy communication with other DirectPlay applications. It uses TCP and UDP ports 2300 to 2400 and 47624. DirectPlay sits on layer 4 and 5 of the
OSI model The Open Systems Interconnection model (OSI model) is a conceptual model that 'provides a common basis for the coordination of SOstandards development for the purpose of systems interconnection'. In the OSI reference model, the communications ...
. *On layer 4, DirectPlay can handle the following tasks if requested by the application: **Message ordering, which ensures that data arrives in the same order it was sent. **Message reliability, which ensures that data is guaranteed to arrive. **Message flow control, which ensures that data is only sent at the rate the receiver can receive it. *On layer 5, DirectPlay always handles the following tasks: **Connection initiation and termination.


Interfaces

*The primary interfaces (methods of access) for DirectPlay are: **IDirectPlay8Server, which allows access to
server Server may refer to: Computing *Server (computing), a computer program or a device that provides functionality for other programs or devices, called clients Role * Waiting staff, those who work at a restaurant or a bar attending customers and su ...
functionality **IDirectPlay8Client, which allows access to
client Client(s) or The Client may refer to: * Client (business) * Client (computing), hardware or software that accesses a remote service on another computer * Customer or client, a recipient of goods or services in return for monetary or other valuabl ...
functionality **IDirectPlay8Peer, which allows access to
peer-to-peer Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers. Peers are equally privileged, equipotent participants in the network. They are said to form a peer-to-peer ...
functionality *Secondary interfaces are: ** Various lobby interfaces that allows players to find and prepare a game before it actually commences. ** Thread management interfaces that allows the programmer to fine-tune resource usage. This also allows for a general disabling of worker threads so that tricky multi-threaded issues are avoided at the cost of decreased responsiveness. ** Various network address translation (NAT) interfaces that make it easier for players behind routers to host games. Most players on
broadband In telecommunications, broadband is wide bandwidth data transmission which transports multiple signals at a wide range of frequencies and Internet traffic types, that enables messages to be sent simultaneously, used in fast internet connections. ...
internet connections face this problem. ** Various voice communication interfaces known as ''DirectPlay Voice'' that make it easier to support audio communication and voice input in games. ** Various queue monitoring interfaces that allow the application to get feedback on how much data has been sent and received as requested. This allows an application to decrease/increase the amount of data sent in accordance with the capabilities of the receiver.


DirectPlay Voice

DirectPlay Voice was introduced in
Windows Me Windows Millennium Edition, or Windows Me (marketed with the pronunciation of the pronoun "me"), is an operating system developed by Microsoft as part of its Windows 9x family of Microsoft Windows operating systems. It is the successor to Windo ...
as part of DirectX 7.1 for multiplayer games. It is a voice communications, recording and playback API that allows gamers to use
voice chat Voice chat is telecommunication via voice over IP technologies—especially when those technologies are used among players in multiplayer online games. Users might use either a VoIP engine system that is built into the game, or a separate p ...
in games written to take advantage of the API, through a DirectPlay network transport session itself.


Current status

DirectPlay was traditionally one of the components of DirectX that received less attention, but for DirectX version 8 it received a major overhaul and became a relatively lightweight networking library. However, as part of Microsoft's unveiling of XNA in 2004, Microsoft revealed that DirectPlay would be
deprecated In several fields, especially computing, deprecation is the discouragement of use of some terminology, feature, design, or practice, typically because it has been superseded or is no longer considered efficient or safe, without completely removing ...
in favor of Games for Windows - Live technology already available on
Xbox Xbox is a video gaming brand created and owned by Microsoft. The brand consists of five video game consoles, as well as applications (games), streaming services, an online service by the name of Xbox network, and the development arm by the ...
and being ported for use on
Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for se ...
PCs A personal computer (PC) is a multi-purpose microcomputer whose size, capabilities, and price make it feasible for individual use. Personal computers are intended to be operated directly by an end user, rather than by a computer expert or techn ...
. DirectPlay will be supported in DirectX DLLs for the lifetime of Microsoft Windows XP, but from the autumn of 2007 the headers and libraries — vital components if developers wanted to develop new programs that utilize the technology — were absent from DirectX SDK. In
Windows Vista Windows Vista is a major release of the Windows NT operating system developed by Microsoft. It was the direct successor to Windows XP, which was released five years before, at the time being the longest time span between successive releases of ...
, DirectPlay has been deprecated and DirectPlay Voice and DirectPlay's
NAT Nat or NAT may refer to: Computing * Network address translation (NAT), in computer networking Organizations * National Actors Theatre, New York City, U.S. * National AIDS trust, a British charity * National Archives of Thailand * National A ...
Helper have been removed.


See also

*
DirectX Microsoft DirectX is a collection of application programming interfaces (APIs) for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms. Originally, the names of these APIs all began with "Direct" ...


References


External links


Microsoft's DirectPlay documentation

Microsoft DirectX 9
The last SDK to ship with DirectPlay headers and libraries. Some alternative libraries which serve the same purpose as DirectPlay * * {{webarchive, url=https://web.archive.org/web/20160423122441/http://www.opentnl.org/, title=OpenTNL
Raknet
DirectX Computer networking