天行健 君子当自强而不息

使用DirectPlay进行网络互联

使用DirectPlay进行网络互联(4)      摘要: 本篇是使用DirectPlay进行网络互联(3)的续篇。

客户端的处理

客户端并不像服务器端那么复杂,它通常只使用两种消息,即接收数据和终止会话消息,以及需要连接和保持单一连接(服务器端)。另外最主要的就是客户端应用程序必须指定其玩家的位置,以便主机能够检索它们。设置玩家的信息是通过首先将相关数据填入一个DPN_PLAYER_INFO结构体,然后再调用 IDirectPlay8Client::SetClientInfo函数来实现。 
 
使用DirectPlay进行网络互联(3)      摘要: 本篇是使用DirectPlay进行网络互联(2)的续篇。

销毁玩家

当玩家断开连接时,服务器端会收到消息DPN_MSGID_DESTROY_PLAYER,这时需要将消息缓冲区转换为DPNMSG_DESTROY_PLAYER类型。  
 
使用DirectPlay进行网络互联(2)      摘要: 一个网络使用IP地址和端口来传送数据,在DirectPlay中,使用DirectPlay专用对象IDirectPlay8Address来构造地址。常用的IDirectPlay8Address方法有三个:

IDirectPlay8Address::Clear 清除所有地址数据
IDirectPlay8Address::SetSP 设置服务提供者
IDirectPlay8Address::AddComponent 添加地址组件 
 
使用DirectPlay进行网络互联(1)      摘要: 网络是指多台计算机互联以进行数据传输及通信的系统。除了两个或更多的计算机之外,网路还需要有网络互联软件(或一个网路操作系统)、网络适配器以及电缆。网络适配器有各种形状和大小,但是一般都采用调制解调器的形状。实际上,调制解调器就是一个网路适配器,它能够将一台计算机通过世界上最大的网络-- -互联网连接到数百万台计算机上。

网络互联模型有三种基本类型:服务器端、客户端以及点对点。

使用服务器端模型,可以建立一个中央网络互联系统。其他计算机使用客户端模型连接到服务器端后,就可以向服务器端发送数据以及从服务器端接收数据。客户端没有其他客户端的信息,不直接与它们连接,客户端都只知道服务器端的信息,而服务器端则拥有所有客户端的信息以及适合这些客户端之间的路由信息。服务器端和客户端常常成对进行描述,即服务器端/客户端(C/S)模型,但是在使用DirectPlay时,将二者分开是有必要的,因为服务器端和客户端是由两个独立的组件组成的。  

posted on 2007-10-11 14:50 lovedday 阅读(869) 评论(0)  编辑 收藏 引用 所属分类: ■ DirectX 9 Program


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


公告

导航

统计

常用链接

随笔分类(178)

3D游戏编程相关链接

搜索

最新评论