其他分享
首页 > 其他分享> > UE4 网络01- Replicated

UE4 网络01- Replicated

作者:互联网

一. Actor Replicated 演员同步

Replicated 是单向的 ,Actor Replicated表示客户端单向同步服务端的actor。例子:

蓝图:

在这里插入图片描述
actor 下勾选 replicated (需要actor类型)

c++:

在这里插入图片描述
breplicated 设为true

测试:

在这里插入图片描述
关卡蓝图中spawn出刚刚创建的actor(使用 has authority 节点仅仅在服务端生成)

在这里插入图片描述
设置 number of player 为1以上, 使用new editor window 跑关卡

在这里插入图片描述
可以看到客户端也同步到了这个actor。

如果没勾选replicated 或者c++没设置的话:

在这里插入图片描述

二. Property Replicated 属性同步

蓝图:

在这里插入图片描述
新建一个变量比如这个actor的生命值, 勾选replication

c++:

在这里插入图片描述
需要使用到反射,加上replicated关键字

在这里插入图片描述
override 方法 GetLifetimeReplicatedProps,DOREPLIFETIME宏添加 要replicated的变量

测试:

在这里插入图片描述

在测试actor中, 仅在服务端把生命值设为400.

在这里插入图片描述
关卡蓝图同样spawn ,
在这里插入图片描述

在要被spawn的actor里判断自己所在的是客户端还是服务端,分别打印,结果:

在这里插入图片描述

客户端的值也同步为400。

如果没有 replicated 生命值:
在这里插入图片描述
去掉关键字
在这里插入图片描述

注释掉重写的方法。

结果:
在这里插入图片描述

标签:01,蓝图,actor,Replicated,UE4,replicated,服务端,客户端
来源: https://blog.csdn.net/weixin_41564287/article/details/115672434