3

虽然raknet看起来相当有趣并且从功能的角度来看确实很吸引人,但它的许可条款似乎对于可能在商业上利用的 GPL 项目来说可能很麻烦,这是知识共享许可条款明确禁止的。

虽然也有opentnl,但它现在似乎不再被积极维护,事实上下载最新的稳定 tarball 甚至在编译过程中也会失败,因为它似乎不支持 gcc >= 3.0 (?)

当然,还有enet,但是这个不能和 raknet/opentnl 支持的抽象特性相比。

那么,除了诸如 ACE、Boost 或 Poco 之类的重要依赖项之外,是否有任何可行的替代方案来嵌入一个相当紧凑、维护良好的 UDP 网络库?

谢谢

4

4 回答 4

3

Ogre3D的wiki提供了一个网络库列表和对它们的简短描述。

于 2009-03-14T17:12:25.583 回答
1

虽然这个答案来晚了,但我在我的游戏 Bitfighter 中使用 OpenTNL 我真的很喜欢它。我在 OS X、Windows 和 Linux 上使用它没有任何障碍。确实,它不是由它的创建者维护的,但是当我有时间时,我将为它创建一个新的 SourceForge 项目,这样人们就有地方发布他们的补丁了。它很稳定并且(相当)有据可查,所以我建议再看一下。

于 2009-09-16T22:14:40.333 回答
1

我一直在寻找非常相似的东西,但无济于事。因此,我决定创建自己的 C++ 网络库,在撰写本文时它还没有完成,但很快就会完成。如果您有兴趣尝试一下,我会及时通知您。到目前为止,它的功能是 TCP/UDP、IPv4、IPv6 Async/Sync 和多播。如果您有任何其他需要实现的功能,请告诉我 :)

于 2009-10-03T00:42:46.473 回答
0

不幸的是,网络编程往往不是微不足道的。

说建议您熟悉 Boost 或 ACE 的网络编程工具,因为它们都是已在许多应用程序中成功使用的成熟库。

我还建议阅读C++ Network Programming: Mastering Complexity Using ACE and PatternsC++ Network Programming: Systematic Reuse with ACE and Frameworks

于 2009-04-09T22:21:51.210 回答