kisence-mian/UnityLockStepDemo
kisence-mian/UnityLockStepDemo has 1,155 GitHub stars and 296 forks. GitHot measured 0 stars in 24 hours and 0 in 7 days. Last checked 2026-11-15 12:28 UTC. Last push 2024-07-15.
측정된 스타 증가
- in 24h
- 0
- in 7 days
- 0
- in 15 days
- 기록 수집 중
- in 1 month
- 기록 수집 중
서로 겹치는 기간의 순증가량이며 일별 합계가 아닙니다. 측정값이 없으면 비워 둡니다. 스타는 관심도를 나타내며 품질을 보장하지 않습니다.
소개
基于Unity做的帧同步Demo,ECS架构
개발 도구README.md
OriginalUnityLockStepDemo
基于Unity做的帧同步Demo
底层使用了我的Unity框架和SupperSocket
ECS架构
该框架还在开发中
构建目标:
1.前后端能统一语言的框架,以至于在前端写好的游戏逻辑,拿到后端就可以直接使用。
2.在框架层面解决同步问题,在此之上写游戏逻辑的时候不需要再考虑游戏同步的问题。
架构思路见我的博客
客户端目录
Script/SyncFrameWork 存放前端同步框架
Script/SyncClientLogic 存放游戏表现层逻辑
Script/SyncGameLogic 存放游戏数据层逻辑,这里的代码要与服务器一致
服务器目录
SyncGameLogic 存放游戏数据层逻辑
ServiceFrameWork目录下是C#服务器框架
LockStepFrameWork目录下是帧同步框架
Data是配置表目录
Network是网络协议目录
Generate是自动生成的代码目录
客户端工具
见前端框架
服务器工具
Tool_GenerateAnalysisCode 生成协议解析代码
Tool_ClearAnalysisCode 清除协议解析代码
Tool_CSharp2Protocol 把c#类生成对应协议
Tool_Protocol2Csharp 把协议生成对应的C#类
Tool_GenerateDataClass 把数据表转换成对应的c#类,用法与前端相同
服务器可配置项(在项目的App.config中配置)
IsDebug => Debug开关
DataBaseURL = 数据库地址
DataBaseUser = 数据库用户名
DataBasePassword = 数据库密码
DataBaseName = 数据库名
RoomPeopleNum = 房间的人数
UpdateInterval = 帧更新间隔(毫秒)