从游戏的角度来看网络与元宇宙( 四 )


从游戏的角度来看网络与元宇宙
文章图片
(美国各个城市网络延迟对比)
通过以上的数据 , 我们来看一下全球的延迟数据 。 在美国 , 数据从一个城市发送到另一个城市再返还回来 , 平均往返时间是35毫秒 。 事实上许多配对都超过了这个数字 , 特别是那些人口密度高 , 用网需求高的城市(例如 , 傍晚从旧金山到纽约的往返) 。 然后是从「城市到用户」的传输时间 , 这是造成传输速度慢的主要方面 。 人口密集的城市、社区或是公寓楼非常容易造成网络拥堵 。 如果你是通过移动设备 , 以4g网络玩游戏的话 , 平均延迟要达到40毫秒 。 如果你住在非中心城市 , 你的数据还要传输到100英里以外 , 并且通过陈旧的、维护不良的电缆设备 , 这样的话延迟还会更高 。 在全球范围内 , 城市之间的传输延迟的中位数范围大约在100-200毫秒之间 。
从游戏的角度来看网络与元宇宙
文章图片
为了解决延迟问题 , 很多在线游戏公司已经开发了一系列解决方案和技术 , 但目前仍然没有形成一定的规模 。
例如 , 目前大多数的高质量多人在线游戏都是通过「匹配区域机制」来划分不同的服务器的 。 游戏开发商能够根据玩家地理区域的记录 , 给那些生活在美国北部、西欧或东南亚的玩家按区域划分匹配最低的延迟 。 游戏作为人们的生活休闲方式之一 , 人们大多数会和一到三个朋友共同游玩 , 因此这种区域的匹配机制做的非常好 。 毕竟 , 你不太可能与几个时区之外的人一起玩游戏 。 不管怎么样 , 作为玩家你并不会关心那些路人对手住在哪里(通常来讲你们的语言都是不相通的) 。 不过Subspace调查还发现 , 中东大约有四分之三的地区互联网延迟波动超过了多人在线游戏的可玩范畴 , 而在美国和欧洲 , 这个数字大概在四分之一 。 这主要反映了管带基础设施的局限 , 而非服务器所在的位置 。
多人在线游戏也使用「netcode」解决方案 , 以确保同步性和一致性以保证玩家能够流畅游玩 。 Netcode主要会基于网络延迟数据 , 通过代码自主的干预玩家设备(例如PS5)的延迟数据 , 直到高延迟玩家(例如游戏对手)输出信号的到达 。 这种让是虽然会让很多低延迟玩家感到厌烦 , 因为他们的肌肉记忆会更适应低延迟 , 但是却是行之有效的 。 在Netcode方案出现之前 , 情况会更加复杂 。 如果你的游戏对手延迟过高 , 而你的设备还是按照正常预期进行 , 这是如果设备发现了对手玩家的数据出现了偏差 , 那么它将会释放对手玩家正在进行的动作 , 然后尝试修正并回放「正确」的动画 。
这些解决方案适用于1v1的游戏(例如平面格斗游戏) , 或是低延迟出现波动的情况(例如40毫秒上下的波动) , 以及具有非常高的可预测性动作游戏(例如赛车游戏 , 平面格斗游戏) 。 但是如果我们将这些解决方案扩展到元宇宙的视角 , 更多的玩家 , 更大的延迟变化 , 更多的动态场景 , 那么这些解决方案的可行性将会非常底 。 代码很难前后一致的预测十几个玩家的变化 , 也很在不破坏体验的情况下 , 修正这些玩家的动作延迟 。 相反 , 简单的断开一个高延迟玩家的连接会更容易 。 尽管一个视频电话会有很多的参与者 , 造成「核心」延迟的参与者才是最重要的 。 就像在游戏中 , 从所有玩家中获得正确的信息 , 延迟才是最大的问题 。
低延迟对于大多数游戏都不是问题 , 例如《炉石传说》或者《WorldwithFriends》之类的游戏 , 他们大多是回合制的游戏 , 要么是不需要立即同步的 , 同样像《王者荣耀》或是《CandyCrush》这样的游戏也是一样 , 不需要高质量的像素输入 , 也不需要精确到毫秒的传输速度 。 但是例如《堡垒之夜》、《使命召唤》和《极限竞速》等Twitch榜上有名的游戏 , 都需要更低的延迟 。 这些游戏是有利益掺杂其中的 。 但是这仍然是整个游戏市场的一小部分 , 甚至在全球玩家的游戏时间中比重更小 。