最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

UE FastArray的分享

2023-06-10 15:18 作者:skycontact  | 我要投稿

使用FastArray

第一步:聲明一個結(jié)構(gòu)體繼承自 FFastArraySerializerItem

第二步:聲明一個Array結(jié)構(gòu)體繼承自 FFastArraySerializer;并且使用TArry來包含第一步聲明的結(jié)構(gòu)體

第三步:聲明結(jié)構(gòu)體特征

第四步:使用的關(guān)鍵函數(shù)

增加或者修改元素后調(diào)用函數(shù)FFastArraySerializer::MarkItemDirty();

刪除元素后調(diào)用函數(shù)FFastArraySerializer::MarkArrayDirty();

例:

第五步:可以實現(xiàn)一些輔助函數(shù)

元素添加:PostReplicatedAdd

元素修改:PostReplicatedChange

元素刪除:PreReplicatedRemove

這三個函數(shù)只會在連接到服務(wù)器的客戶端才會被被調(diào)用,服務(wù)器以及單機均不會被調(diào)用。

如果一個元素是被刪除,之后又添加了新的,不一定會調(diào)PreReplicatedRemove()以及PostReplicatedAdd(),有可能只有一個PostReplicatedChange()。

FastArray數(shù)據(jù)結(jié)構(gòu)

FFastArraySerializerItem


FFastArraySerializer

FastArray的原理

使用的關(guān)鍵函數(shù)解析

FFastArraySerializer::MarkItemDirty()

FFastArraySerializer::MarkArrayDirty()

例:空Array,添加元素后調(diào)用MarkItemDirty

初次序列化的流程

第一步:構(gòu)造數(shù)據(jù)

例子

例:數(shù)組有A、B和C三個元素

例:

第二步:序列化

第三步:執(zhí)行函數(shù)FNetSerializeCB::NetDeltaSerializeForFastArray()

反序列化的流程

第一步:做一個ItemMap


第二步:執(zhí)行函數(shù)FNetSerializeCB::NetDeltaSerializeForFastArray()

第三步:反序列化

非初次序列化的流程

第一步:判斷是否需要進行序列化

第二步:構(gòu)造數(shù)據(jù)

例:

第三步:序列化


第四步:執(zhí)行函數(shù)FNetSerializeCB::NetDeltaSerializeForFastArray()


UE FastArray的分享的評論 (共 條)

分享到微博請遵守國家法律
宁阳县| 绥化市| 灵川县| 饶阳县| 集贤县| 庐江县| 凤冈县| 色达县| 浏阳市| 明光市| 张家口市| 怀来县| 康乐县| 武山县| 双柏县| 依安县| 运城市| 保山市| 万安县| 房产| 阆中市| 彭泽县| 阿克苏市| 余庆县| 东海县| 商南县| 政和县| 甘肃省| 马公市| 南康市| 宕昌县| 马边| 齐齐哈尔市| 慈溪市| 房山区| 重庆市| 互助| 凤阳县| 甘南县| 长海县| 宁都县|