因此,我在这里阅读了this的帖子:我有点困惑,下面是我的补充问题:
UDP如何处理丢失的数据?因为它说UDP不关心数据是否会到达目的地或数据的排序。
因此,在在线游戏中,UDP是如何处理数据丢失的?我的理解是,当数据丢失时,让我们说我的角色的手在在线游戏中是看不见的?还是多年来我种植的warglaive of azinoth丢失了?LOL
如果排序不重要,那么就让我说,我的角色的头会被弄乱,或者身体会脱臼,诸如此类。
有人能帮我澄清一下吗?
发布于 2013-05-31 07:43:13
UDP在游戏中的一个更好的例子是位置信息。
在这种情况下,一个字符的位置每秒钟发送几次,一个数据包是否丢失并不重要,因为另一个包很快就会再次发送。当你把它和一个游戏引擎结合起来,它可以进行一定程度的插值和外推,然后你就可以从零星的数据中获得平滑的运动。
在重新排序的情况下,如果您收到一个字符位置(在时间上),由于数据包的重新排序,您只会丢弃它,因为您已经有了一个更新的值。
使用您的掠夺者示例--可以通过TCP或使用UDP的可靠包装器将此信息发送给您的客户端。
看看http://code.google.com/p/lidgren-network-gen3/的C# UDP网络库,它是为游戏而设计的。它在UDP上提供了各种不可靠和可靠的通道,并且应该让您了解UDP在游戏中的典型用法。
https://stackoverflow.com/questions/16852025
复制相似问题