# wgframe_client_unity **Repository Path**: 58753101/wgframe_client_unity ## Basic Information - **Project Name**: wgframe_client_unity - **Description**: 轻量级游戏网络通信框架Unity客户端,与Java服务端 wgframe 协议一致 - **Primary Language**: C# - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-26 - **Last Updated**: 2026-05-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # WgFrame Unity Client 轻量级游戏网络通信框架Unity客户端,与Java服务端 [wgframe](https://github.com/xxx/wgframe) 协议一致。 ## 功能特性 - **多协议支持**: TCP / WebSocket (WS/WSS) - **二进制序列化**: 大端序,与Java服务端完全兼容 - **消息头协议**: 1字节消息头(最高位=zip标志 + 低7位=MessageType) - **GZIP压缩**: 超过阈值自动压缩,带解压负载保护 - **心跳保活**: 自动Ping/Pong,RTT计算,服务器时间同步 - **消息缓冲池**: 减少GC分配 - **零外部依赖**: 内置UnityWebSocket,开箱即用 ## 安装 直接复制 `WgFrame` 文件夹到目标Unity项目的 `Assets/` 目录下即可。 ## 快速开始 ```csharp using WgFrame.Net; using WgFrame.Net.Operation; public class GameNetwork : MonoBehaviour, IPeerCallback { private NetPeer peer; void Start() { peer = new NetPeer(this); peer.Connect("tcp://127.0.0.1:8080", "TestGame"); } void Update() { peer.Service(); } public void SendRequest(short opCode, byte[] data) { peer.SendOperation(new OperationRequest(opCode, data)); } // IPeerCallback 实现 public void OnOperationResponse(OperationResponse response) { Debug.Log($"收到响应: {response.OperationCode}"); } public void OnStatusChanged(StatusCode status) { Debug.Log($"状态变更: {status}"); } public void DebugReturn(DebugLevel level, string message, string memberName = "", string filePath = "", int lineNumber = 0) { Debug.Log($"[{level}] {message}"); } } ``` ## 协议格式 ``` TCP帧: [4字节长度][1字节消息头][业务数据] 消息头: [最高位=zip标志(0x80)] + [低7位=MessageType] MessageType: 1 = InitRequest 2 = InitResponse 3 = Operation 4 = OperationResponse 5 = InternalOperationRequest 6 = InternalOperationResponse ``` ## 目录结构 ``` WgFrame/ ├── IO/ # 二进制读写 ├── Net/ │ ├── Operation/ # 操作定义 (Init/Ping) │ ├── Peer/ # 网络对等体 (TcpPeer) │ ├── Protocols/ # 协议解析 (Protocol16) │ └── Socket/ # 底层Socket (TcpAsync/WebSocket) ├── Serialize/ # 序列化 ├── Utils/ # 工具类 └── Thirdparty/ # 内置第三方库 (UnityWebSocket) ``` ## License MIT