我刚刚开始编程,我已经用XNA做了一些东西,我创建了我的第一个3D游戏,类似于minecraft。
所以我决定看看网络,因为在msdn.网站上有一个教程。事实证明,那里的代码只适用于XBox,我开始在互联网上寻找更有用的东西,直到我遇到有人说XNA不支持我正在寻找的东西。
我正在认真考虑买一本XNA 4.0的书(我讨厌找几个小时的教程),但在这之前,我想知道PC之间是否可以联网。如果不可以,我应该尝试学习什么?
Managed DirectX?C++ DirectX?还是其他的?
XNA提供访问 "LIVE "系统--如 "Xbox LIVE "和 "Games for Windows - LIVE"。
在Xbox 360上,你只能通过XNA联网系统。没有其他选项。
而在Windows上,你只能在与微软签订协议的情况下使用LIVE。所以如果不是这样的话,你唯一的选择就是在.NET框架提供的基础上实现你自己的联网(XNA运行在.NET框架上)。对于网络化游戏,你感兴趣的类是在 System.Net.Sockets 命名空间。
现在你可以直接打开一个套接字并开始发送数据。但你可能想使用UDP--它的性能很好,但不可靠--所以你可能最好使用一个像 利德格伦 (或Prix提到的其他产品之一)来增加一个可靠性层和一系列其他好东西。