- 這個項目的主要目標有幾個:
2.學習Protobuf的應用
- 最終的效果
- 前端
採用c#的tcp通信方式。在初始化時,建立連接。然後在Unity的每幀函數Update()檢測服務端有無數據過來。爲了避免粘包等情況的發生,前後端的消息體都是這樣結構的:消息體長度+消息體內容。在解析的過程中,先解析消息體長度,然後等待足夠的二進制流,最後再利用Protobuf-net進行解碼成實體對象。
發送消息的過程剛好相反。將實體對象序列化成二進制流,然後組裝成消息體,發送到後端
b.UI設計
程序的UI採用NGUI來製作。界面佈局比較簡單。暱稱框,消息列表,消息框。命名好,佈局好,然後在程序中處理提交函數,將消息發送到後端。當後端消息推送過來是,顯示在消息列表中。有一個沒來得及完善的地方,是目前還不支持中文,還沒有及時弄好字體集。
- 後端
- 總結