使用WCF的在线多人游戏

6
你认为WCF是否提供了开箱即用的管道以支持在线多人游戏体验,尤其是像魔兽世界、终极在线等实时环境的游戏?为什么?
最重要的考虑因素可能是:
1.所包含的绑定是否足够满足这种场景的需求?
2.除了任何物理服务器要求外,所包含的绑定能否满足性能要求?
期待听到您的想法!
谢谢。

2
什么样的在线游戏?这取决于游戏状态需要多频繁地更新。是回合制还是实时的? - Evan M
@Evan,我澄清了我的问题。我对实时游戏体验非常感兴趣。 - Didaxis
1个回答

19
你认为WCF是否提供了开箱即用的必要基础设施以支持在线多人游戏体验?为什么或者为什么不?
不,它并没有开箱即用。几乎所有在线游戏都使用UDP而不是TCP。这篇文章非常好地解释了原因,特别是看一下“为什么永远不应该使用TCP来网络化多人游戏”部分。WCF默认不使用UDP,所以您需要实现自定义传输
这些包含的绑定是否足够满足这样的场景?
是的,这些绑定可能是足够的,但传输不是。
除了任何物理服务器要求之外,这些包含的绑定是否满足性能要求?
唯一确定的方法是进行测试。

1
非常好的答案!链接内容非常相关。如果可以的话,我会点赞两次!谢谢 - Didaxis
我知道UDP是实时在线游戏的事实标准,只是想听听一些意见。似乎在某些游戏中,如果可以接受不太实时的情况,你可能可以使用轮询双工绑定。但我想UDP通常更适合。 - Didaxis
@ErOx 我想这取决于你的情况。在选择 TCP 之前,我会进行大量测试和实验。关于 WCF 的一个“好处”是,如果使用 TCP 不好,你可以相对容易地更改传输方式,因为 WCF 大多数抽象出了传输实现。 - vcsjones
我知道这个回答的年龄有点久了,但是在接下来的一个月里,似乎发布了以下内容(https://www.codeproject.com/articles/331599/what-s-new-in-wcf-udp-transport-support)。我认为这可能会有用。 - Slagmoth

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接