翻了半天unity的API,也没有发现可以处理Socket的方法。Unity自己封了个网络处理的类Network,主要用于状态同步。 似乎是要实现MMO级别的网络应用,只能用C#自己去写了。(Unity不像AS,有直接处理数据包、字节级别的底层函数。至少现在没有。)
我们还是先了解一下Unity,看看用Unity如何编写通信,从最简单的开始。
1,新建项目。新建一个项目里面会有一个摄像机。
2,编写服务器端代码cs:
- using UnityEngine;
- using System.Collections;
-
- public class server : MonoBehaviour {
-
- int Port = 10000;
-
- //OnGUI方法,所有GUI的绘制都需要在这个方法中实现
- void OnGUI(){
- //Network.peerType是端类型的状态:
- //即disconnected, connecting, server 或 client四种
- switch(Network.peerType){
- //禁止客户端连接运行, 服务器未初始化
- case NetworkPeerType.Disconnected:
- StartServer();
- break;
- //运行于服务器端
- case NetworkPeerType.Server:
- OnServer();