UE4变量网络复制的特性
这里视变量为无条件复制,也就是
void ClassName::GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps)const
{
Super::GetLifetimeReplicatedProps(OutLifetimeProps);
DOREPLIFETIME(ClassName, VariableName);
}
使用Replicated关键字的变量:
UPROPERTY(Replicated)
bool Var;
同步规则:当且仅当变量在服务器发生改变时向客户端同步。
使用ReplicatedUsing关键字的变量:
UPROPERTY(ReplicatedUsing=OnRep_Fun)
bool Var;
UFUNCTION()
void OnRep_Fun();
同步规则:当且仅当变量在服务器发生改变时向客户端同步。
OnRep函数调用规则:更改变量的那个客户端或服务器不会调用OnRep函数,需要手动调用。其他客户端一旦变量改变(被同步)将自动调用OnRep函数。
版本UE4.21