2.1 - 网络相关性[第1部分 - 完全不复制]

网络功能示例关卡概述,示例2.1:网络相关性(第1部分 - 完全不复制)。

Windows
MacOS
Linux
本页面的内容

2_1.png

为了能够从 服务器客户端 两个视角进行查看,请在 运行(Play) 下拉菜单中将 客户端数量(Number of Clients) 字段设置为2。

要通过蓝图创建联网方式正确的游戏进程,理解 网络相关性 的概念也很重要。 简单来说,始终让客户端计算机接收每个Actor的网络数据通常没有意义。位于大型地图一端的玩家不需要通过网络知道地图的另一端发生的一切。 在这种情况下,我们认为在给定时间只有部分Actor与玩家“相关”。相关Actor通常是玩家可以看到、可与之交互或位于玩家附近的Actor。作为一种优化方法,玩家仅接收相关Actor的所有网络更新。

这种优化方法的一个副作用是,你还必须考虑如何处理Actor本来不相关但后来变得相关(通常是因为玩家靠近Actor)这种情况。这与处理加入正在进行的游戏的玩家时面临的问题非常相似。

在本示例以及剩余的 网络相关性 示例中,我们将重现将相关性纳入考虑范围之后的宝箱打开行为。

蓝图详细介绍

BP_Relevancy_Replication_None 蓝图的事件图表中,你可以看到当权限接收到有人与触发器重叠的信号时,OnChestTouched 函数被调用而且仅由 DoOnce 节点执行一次。

单击查看大图

然后 OnChestTouched 函数将执行两个附加函数:一个用于打开宝箱,另一个用于播放与宝箱打开事件绑定的效果。

单击查看大图

由于示例未尝试处理复制或相关性,只有服务器能够看到宝箱打开。

Select Skin
Light
Dark

欢迎来到全新虚幻引擎4文档站!

我们正在努力开发新功能,包括反馈系统,以便您能对我们的工作作出评价。但它目前还未正式上线。如果您对此页面有任何意见与在使用中遭遇任何问题,请前往文档反馈论坛告知我们。

新系统上线运行后,我们会及时通知您的。

发表反馈意见