国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(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的分享的評論 (共 條)

分享到微博請遵守國家法律
尚义县| 浦东新区| 年辖:市辖区| 东安县| 榆社县| 兴安县| 山丹县| 昭平县| 高陵县| 呼伦贝尔市| 桓台县| 沙湾县| 资兴市| 珲春市| 大宁县| 岐山县| 涿鹿县| 山丹县| 阿拉尔市| 庆安县| 濮阳市| 白沙| 东宁县| 耿马| 张家港市| 白沙| 高要市| 乐安县| 扬中市| 马龙县| 阳西县| 宿迁市| 云安县| 临高县| 丰原市| 霍山县| 治县。| 香格里拉县| 衡山县| 新丰县| 内江市|