Actor replication可以简单的理解为:

在服务器上面生成一份一模一样的actor或者是其他数据,然后传递给每个客户端,其他玩家就都可以看到这个物体。

C++开启方式:

​ 在c++类 构造函数中,添加 :bReplicates = true;

Property replicateion :

​ 添加头文件:#include “Net/UnrealNetwork.h”

​ C++ 开启方式:

属性前面添加一个宏定义:UPROPERTY(Replicated)

在cpp 文件中,在 GetLifetimeReplicatedProps 函数中添加:DOREPLIFETIME(类名称,变量名)

不需要声明该函数

RepNotify

如果一个变量设置为Rep_Notify,当变量发生复制时,服务端和收到该值的客户端都可以调用一个自定义的函数

​ 注意C++的版本略有区别,仅在客户端调用函数

设置方法:

​ 蓝图:设置为Rep_Notify

​ C++:UPROPERTY(ReplicatedUsing = 执行的函数名)

​ 例如:

UPROPERTY(ReplicatedUsing = OnRep_Armor)
float Armor = 100.f;
UFUNCTION()
void OnRep_Armor();

同时也不要忘记加上PropertyReplicattion 的一些设置