# LuaDiff **Repository Path**: liyonghelpme/LuaDiff ## Basic Information - **Project Name**: LuaDiff - **Description**: Lua差分数据同步系统 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2020-05-27 - **Last Updated**: 2021-08-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README Lua差分系统设计 1:通过Protobuf 的 optional 方式,来序列化和反序列化差分数据 2:通过Lua自身的Metatable 来支持 标记数据变动 实现差分数据 3:每帧同步 差分序列化后的 PB数据 4:当初次同步的时候,同步完整的PB序列化数据 实现: delta.proto 实现pb 协议 pb.c 为 protobuf 的c部分实现 Buffer.lua protobuf的lua部分实现 GenLuaPB.py 将protobuf生成对应的 lua序列化 反序列化代码 DeltaStateTable.lua 实现lua层的差分 结构 API: PB的序列化 反序列化 Lib.GetSerialize(data, 协议) Lib.DeSerialize(data, 协议) 获取非嵌套 差分数据 Lib:GetDelta(tb) 获取嵌套差分数据 Lib:GetDeltaDeep(tb)